Bladeren bron

设备升级任务

李进 1 jaar geleden
bovenliggende
commit
e0e33d3c5b
1 gewijzigde bestanden met toevoegingen van 10 en 14 verwijderingen
  1. 10 14
      device-api-service/src/main/java/com/xy/service/DeviceStatusServiceImpl.java

+ 10 - 14
device-api-service/src/main/java/com/xy/service/DeviceStatusServiceImpl.java

@@ -68,10 +68,6 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
     @ApiOperation("上报信息")
     public R up(DeviceStatusDto.Up up) {
         log.info("设备信息上报:{}", JSONUtil.toJsonStr(up));
-        DeviceStatus deviceStatus = getById(up.getDeviceId());
-        if (deviceStatus == null) {
-            return R.ok();
-        }
         ThreadPoolUtils.excPoll(DeviceThreadPoolConfig.DEVICE_STATUS_UP, 4)
                 .execute(() -> {
                     //修改状态信息
@@ -79,15 +75,15 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
                 })
                 .execute(() -> {
                     //上报关门
-                    if (!Emptys.check(deviceStatus.getDoorStateL())) {
+                    if (!Emptys.check(up.getDoorStateL())) {
                         return;
                     }
                     Integer value = SysDictUtils.getValue(EnumDevcieDoorStatus.Code.CODE.getCode(), EnumDevcieDoorStatus.LOCKED.getCode(), Integer.class);
-                    if (!deviceStatus.getDoorStateL().equals(value)) {
+                    if (!up.getDoorStateL().equals(value)) {
                         return;
                     }
                     activityInfoService.abort(new ActivityInfoDto.Abort()
-                            .setDeviceId(deviceStatus.getDeviceId())
+                            .setDeviceId(up.getDeviceId())
                             .setWorkType(2)
                             .setTimeout(60 * 1)
                     );
@@ -97,17 +93,17 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
                     if (!Emptys.check(up.getTempValue())) {
                         return;
                     }
-                    DeviceSysinfo deviceSysinfo = deviceSysinfoService.getById(deviceStatus.getDeviceId());
+                    DeviceSysinfo deviceSysinfo = deviceSysinfoService.getById(up.getDeviceId());
                     //添加设备温度日志
                     if (!deviceSysinfo.getIsHaveTemp()) {
                         return;
                     }
                     DeviceTempRecordsDto.Save save = new DeviceTempRecordsDto.Save()
-                            .setDeviceId(deviceStatus.getDeviceId());
+                            .setDeviceId(up.getDeviceId());
                     save.setTempValue(up.getTempValue());
                     deviceTempRecordsService.save(save);
                     //查询设备配置
-                    DeviceConfig deviceConfig = deviceConfigService.getById(deviceStatus.getDeviceId());
+                    DeviceConfig deviceConfig = deviceConfigService.getById(up.getDeviceId());
                     int tempMax, tempMin;
                     if (deviceConfig == null) {
                         Map<String, SysDictRedis> stringSysDictRedisMap = SysDictUtils.get(EnumDeviceTempConfig.Code.CODE.getCode());
@@ -118,7 +114,7 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
                         tempMin = deviceConfig.getTempMin();
                     }
                     //温度有异常
-                    String key = String.format("device_temp_error:%d", deviceStatus.getDeviceId());
+                    String key = String.format("device_temp_error:%d", up.getDeviceId());
                     if (up.getTempValue() > tempMax || up.getTempValue() < tempMin) {
                         //校验异常次数
                         Integer errorSize = SysDictUtils.getValue(EnumDeviceTempConfig.Code.CODE.getCode(), EnumDeviceTempConfig.ERROR_SIZE.getCode(), Integer.class);
@@ -128,7 +124,7 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
                             //添加事件
                             String msg = "温度异常-温度阈值%d - %d,当前温度%d";
                             DeviceEventMsgDto.Save deviceEventMsg = new DeviceEventMsgDto.Save()
-                                    .setDeviceId(deviceStatus.getDeviceId());
+                                    .setDeviceId(up.getDeviceId());
                             deviceEventMsg.setCode(DeviceErrorRecordTypesEnum.T.getCode());
                             deviceEventMsg.setMsg(String.format(msg, tempMin, tempMax, up.getTempValue()));
                             deviceEventMsgService.save(deviceEventMsg);
@@ -150,7 +146,7 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
                         return;
                     }
                     LambdaQueryWrapper<DeviceVersionUp> lambdaQueryWrapper = new LambdaQueryWrapper<DeviceVersionUp>()
-                            .eq(DeviceVersionUp::getDeviceId, deviceStatus.getDeviceId())
+                            .eq(DeviceVersionUp::getDeviceId, up.getDeviceId())
                             .ge(DeviceVersionUp::getDeviceVersion, upInfo.getVersion())
                             .eq(DeviceVersionUp::getStatus, 4)
                             .eq(DeviceVersionUp::getProgress, 100);
@@ -172,7 +168,7 @@ public class DeviceStatusServiceImpl extends ServiceImpl<DeviceStatusMapper, Dev
                             .set(src, upInfo.getSrc());
                     templet.set("data", data);
                     CommandMqtt commandMqtt = new CommandMqtt()
-                            .setDeviceId(deviceStatus.getDeviceId())
+                            .setDeviceId(up.getDeviceId())
                             .setTemplet(templet);
                     mqttService.senCommand(Arrays.asList(commandMqtt));
                 });