Parcourir la source

mqtt指令发布

李进 il y a 2 ans
Parent
commit
72143c71c9

+ 20 - 19
device-api-service/src/main/java/com/xy/service/DeviceQualityServiceImpl.java

@@ -151,30 +151,27 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
             JSONObject obj = templet.getJSONObject(LambdaUtils.getProperty(DeviceQualityDto.QualityResultBack::getData));
             String type = obj.getStr(LambdaUtils.getProperty(DeviceQualityDto.QualityResultBack::getType));
             QualityEnum qualityEnum = QualityEnum.getQualityEnum(type);
-            if (qualityEnum == null) {
-                return;
+            if (qualityEnum != null) {
+                //修改质检
+                UpdateWrapper<DeviceQuality> updateWrapper = new UpdateWrapper<DeviceQuality>()
+                        .set(qualityEnum.getBeginTime(), now)
+                        .set(qualityEnum.getEndTime(), null)
+                        .set(StringTools.humpToLine(LambdaUtils.getProperty(DeviceQuality::getUpdateTime)), now)
+                        .eq(StringTools.humpToLine(LambdaUtils.getProperty(DeviceQuality::getQualityId)), rest.getQualityId());
+                update(updateWrapper);
+                //修改质检属性
+                DeviceQualityValueDto.Update update = new DeviceQualityValueDto.Update()
+                        .setCode(type);
+                update.setQualityId(rest.getQualityId());
+                deviceQualityValueService.update(update);
             }
-            //修改质检
-            UpdateWrapper<DeviceQuality> updateWrapper = new UpdateWrapper<DeviceQuality>()
-                    .set(qualityEnum.getBeginTime(), now)
-                    .set(qualityEnum.getEndTime(), null)
-                    .set(StringTools.humpToLine(LambdaUtils.getProperty(DeviceQuality::getUpdateTime)), now)
-                    .eq(StringTools.humpToLine(LambdaUtils.getProperty(DeviceQuality::getQualityId)), rest.getQualityId());
-            update(updateWrapper);
-            //修改质检属性
-            DeviceQualityValueDto.Update update = new DeviceQualityValueDto.Update()
-                    .setCode(type);
-            update.setQualityId(rest.getQualityId());
-            deviceQualityValueService.update(update);
             //发送mqtt指令
             CommandMqtt commandMqtt = new CommandMqtt()
                     .setDeviceId(deviceQuality.getDeviceId())
                     .setTemplet(templet);
             commandMqtts.add(commandMqtt);
         });
-        if (commandMqtts.size() > 0) {
-            mqttService.senCommand(commandMqtts);
-        }
+        mqttService.senCommand(commandMqtts);
         return R.ok();
     }
 
@@ -209,7 +206,7 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
                     JSONObject obj = templet.getJSONObject(LambdaUtils.getProperty(DeviceQualityDto.QualityResultBack::getData));
                     String type = obj.getStr(LambdaUtils.getProperty(DeviceQualityDto.QualityResultBack::getType));
                     QualityEnum qualityEnum = QualityEnum.getQualityEnum(type);
-                    if (qualityEnum == null) {
+                    if (qualityEnum != null) {
                         return;
                     }
                     Reflect.PropertyReflect.setPropertyValue(deviceQuality, StringTools.toCamelCase(qualityEnum.getBeginTime()), now);
@@ -273,6 +270,10 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
     public R qualityResultBack(@RequestBody DeviceQualityDto.QualityResultBack qualityResultBack) {
         Long deviceId = qualityResultBack.getDeviceId();
         String type = qualityResultBack.getType();
+        QualityEnum qualityEnum = QualityEnum.getQualityEnum(type);
+        if (qualityEnum == null) {
+            return R.ok();
+        }
         JSONObject data = qualityResultBack.getData();
         LambdaQueryWrapper<DeviceQuality> lambdaQueryWrapper = new LambdaQueryWrapper<DeviceQuality>()
                 .eq(DeviceQuality::getDeviceId, deviceId)
@@ -283,7 +284,7 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
         }
         //修改质检
         UpdateWrapper<DeviceQuality> updateWrapper = new UpdateWrapper<DeviceQuality>()
-                .set(QualityEnum.getQualityEnum(type).getEndTime(), LocalDateTime.now())
+                .set(qualityEnum.getEndTime(), LocalDateTime.now())
                 .eq(StringTools.humpToLine(LambdaUtils.getProperty(DeviceQuality::getDeviceId)), deviceId)
                 .eq(StringTools.humpToLine(LambdaUtils.getProperty(DeviceQuality::getShowStatus)), true);
         update(updateWrapper);