Procházet zdrojové kódy

fix:修复因未填上下限导致的导入报错
fix:修复小程序替换为关键字搜索后导致的设备总缆数据错误

黄渊昊 před 5 měsíci
rodič
revize
66a84c0fce

+ 14 - 4
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitordevice/service/impl/MonitorDeviceServiceImpl.java

@@ -487,10 +487,20 @@ public class MonitorDeviceServiceImpl extends ServiceImpl<MonitorDeviceMapper, M
         List<MonitorDevice> monitorDeviceList = new ArrayList<>();
         for (MonitorDeviceTemplate monitorDeviceTemplate : monitorDeviceTemplateList) {
             // 判断上下限输入是否合法
-            if (monitorDeviceTemplate.getCo2Down() >= monitorDeviceTemplate.getCo2Up() ||
-                    monitorDeviceTemplate.getHumidityDown() >= monitorDeviceTemplate.getHumidityUp() ||
-                    monitorDeviceTemplate.getTemperatureDown() >= monitorDeviceTemplate.getTemperatureUp()) {
-                throw new CommonException("设备:*" + monitorDeviceTemplate.getDeviceName() + "*的上下限填写有误");
+            if (!Objects.isNull(monitorDeviceTemplate.getTemperatureUp()) && !Objects.isNull(monitorDeviceTemplate.getTemperatureDown())) {
+                if (monitorDeviceTemplate.getTemperatureDown() >= monitorDeviceTemplate.getTemperatureUp()) {
+                    throw new CommonException("设备:*" + monitorDeviceTemplate.getDeviceName() + "*的温度上下限填写有误");
+                }
+            }
+            if (!Objects.isNull(monitorDeviceTemplate.getHumidityUp()) && !Objects.isNull(monitorDeviceTemplate.getHumidityDown())) {
+                if (monitorDeviceTemplate.getHumidityDown() >= monitorDeviceTemplate.getHumidityUp()) {
+                    throw new CommonException("设备:*" + monitorDeviceTemplate.getDeviceName() + "*的湿度上下限填写有误");
+                }
+            }
+            if (!Objects.isNull(monitorDeviceTemplate.getCo2Up()) && !Objects.isNull(monitorDeviceTemplate.getCo2Down())) {
+                if (monitorDeviceTemplate.getCo2Down() >= monitorDeviceTemplate.getCo2Up()) {
+                    throw new CommonException("设备:*" + monitorDeviceTemplate.getDeviceName() + "*的二氧化碳上下限填写有误");
+                }
             }
             MonitorDevice monitorDevice = BeanUtil.copyProperties(monitorDeviceTemplate, MonitorDevice.class);
             monitorDeviceList.add(monitorDevice);

+ 5 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitortarget/mapper/mapping/MonitorTargetMapper.xml

@@ -9,6 +9,11 @@
         and delete_flag = 'NOT_DELETE'
         <if test="name != null and name != ''">
             and name like '%${name}%'
+            or id in (
+            select `monitor_target_id`
+            from `monitor_target_region`
+            where sensor_code like '%${name}%'
+            )
         </if>
         <if test="roomId != null and roomId != ''">
             and room_id=#{roomId}