فهرست منبع

Merge remote-tracking branch 'origin/master'

zhangcl 4 ماه پیش
والد
کامیت
ecf56d092b

+ 8 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/DeviceController.java

@@ -12,6 +12,7 @@ import org.springframework.web.bind.annotation.*;
 import javax.annotation.security.PermitAll;
 import javax.validation.Valid;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@@ -32,7 +33,13 @@ public class DeviceController {
     @Operation(summary = "获取一段时间内的设备数据")
     @PermitAll
     public CommonResult<List<DeviceVO>> getRunningSpanDataInfo(@Valid DeviceVO device) {
-        return success(deviceService.selectBySpan(device));
+        List<DeviceVO> result = new ArrayList<>();
+        if(device.getTs()==null&&device.getTs1()==null){
+            result = deviceService.selectNew(device);
+        }else{
+            result = deviceService.selectBySpan(device);
+        }
+        return success(result);
     }
 
     /**

+ 8 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/mysql/TDDeviceMapper.java

@@ -25,6 +25,14 @@ public interface TDDeviceMapper extends BaseMapperX<TDDeviceDO> {
     @TenantIgnore
     List<DeviceVO> selectBySpan(@Param("deviceName") String tableName, @Param("ts") Timestamp ts,@Param("ts1") Timestamp ts1);
 
+
+    @Select("SELECT * FROM iot_log.device_${deviceName}  ORDER BY read_time  DESC LIMIT 1;")
+    @DS("tdengine")
+    @TenantIgnore
+    List<DeviceVO> selectNew(@Param("deviceName") String tableName);
+
+
+
     @Select("SELECT * FROM iot_log.device_${deviceName} WHERE ts = #{ts}")
     @DS("tdengine")
     @TenantIgnore

+ 6 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/DeviceServiceImpl.java

@@ -35,6 +35,12 @@ public class DeviceServiceImpl implements IDeviceService {
         return device;
     }
 
+    @Override
+    public List<DeviceVO> selectNew(DeviceVO deviceVO) {
+        List<DeviceVO> device = deviceMapper.selectNew(deviceVO.getDeviceName());
+        return device;
+    }
+
     @Override
     public List<DeviceVO> selectByTs(DeviceVO deviceVO) {
         List<DeviceVO> device = deviceMapper.selectByTs(deviceVO.getDeviceName(),deviceVO.getTs());

+ 8 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/IDeviceService.java

@@ -15,6 +15,14 @@ public interface IDeviceService {
      */
     List<DeviceVO> selectBySpan(DeviceVO deviceVO);
 
+    /**
+     *
+     * @param deviceVO
+     * @return
+     * @description 不传时间,默认返回一条最新的数据
+     */
+    List<DeviceVO> selectNew(DeviceVO deviceVO);
+
     /**
      * 查询指定时间内的运行数据
      *