diff --git a/mh-admin/src/main/resources/application-dev.yml b/mh-admin/src/main/resources/application-dev.yml index d511bcc..7ae31c4 100644 --- a/mh-admin/src/main/resources/application-dev.yml +++ b/mh-admin/src/main/resources/application-dev.yml @@ -191,10 +191,10 @@ mqttSpring: # BASIC parameters are required. BASIC: protocol: MQTT - host: 127.0.0.1 - port: 2883 - username: mh - password: mhtech@803 + host: 192.168.1.79 + port: 1883 + username: test123456 + password: test123456 # protocol: MQTT # host: mqtt.mhito.net # port: 1883 @@ -209,7 +209,7 @@ mqttSpring: # 无人机远程控制模式(drone remote control) DRC: protocol: WS - host: 127.0.0.1 + host: 192.168.1.79 port: 8083 path: /mqtt control: diff --git a/mh-common/src/main/java/com/mh/common/core/domain/dto/HotWaterNowDataDTO.java b/mh-common/src/main/java/com/mh/common/core/domain/dto/HotWaterNowDataDTO.java index 46bb091..e311e7f 100644 --- a/mh-common/src/main/java/com/mh/common/core/domain/dto/HotWaterNowDataDTO.java +++ b/mh-common/src/main/java/com/mh/common/core/domain/dto/HotWaterNowDataDTO.java @@ -52,4 +52,12 @@ public class HotWaterNowDataDTO { private int orderNum; + private String isWarning; // 是否具有报警信号 + + private String inPress; // 入口压力 + + private String outPress; // 出口压力 + + private String goalPress; // 目标压力 + } diff --git a/mh-system/src/main/java/com/mh/system/service/device/impl/CollectionParamsManageServiceImpl.java b/mh-system/src/main/java/com/mh/system/service/device/impl/CollectionParamsManageServiceImpl.java index ed9b08f..45c3a7f 100644 --- a/mh-system/src/main/java/com/mh/system/service/device/impl/CollectionParamsManageServiceImpl.java +++ b/mh-system/src/main/java/com/mh/system/service/device/impl/CollectionParamsManageServiceImpl.java @@ -925,23 +925,65 @@ public class CollectionParamsManageServiceImpl implements ICollectionParamsManag } private List lifeWaterLevel(String systemType, String floorId) { - List lifeWaterLevel = collectionParamsManageMapper.selectHotWaterBySystemTypeAndBuildingIdAndDeviceType(systemType, floorId, "16"); - List list = lifeWaterLevel.stream().filter(vo -> "11".equals(vo.getParamType())).toList(); + List lifeWaterLevel1 = collectionParamsManageMapper.selectHotWaterBySystemTypeAndBuildingIdAndDeviceType(systemType, floorId, "16"); + List plcData = collectionParamsManageMapper.selectHotWaterBySystemTypeAndBuildingIdAndDeviceType(systemType, floorId, "27"); + List list = new ArrayList<>(); + list.addAll(lifeWaterLevel1); + list.addAll(plcData); + // 开始遍历list if (!list.isEmpty()) { - return list.stream().map(vo -> { - HotWaterNowDataDTO dto = new HotWaterNowDataDTO(); - dto.setId(vo.getId()); - dto.setCurDate(vo.getCollectTime().toString()); - dto.setBuildingId(vo.getDeviceLedgerId()); - dto.setBuildingName(vo.getDeviceName()); - dto.setTankId(vo.getDeviceLedgerId()); - dto.setTankName(vo.getDeviceName()); - dto.setWaterLevel1(vo.getCollectValue()); - dto.setOrderNum(1); - return dto; - }).collect(Collectors.toList()); - } - return null; + HotWaterNowDataDTO dto = new HotWaterNowDataDTO(); + dto.setId(list.getFirst().getId()); + dto.setCurDate(list.getFirst().getCollectTime().toString()); + dto.setBuildingId(list.getFirst().getDeviceLedgerId()); + dto.setBuildingName(list.getFirst().getDeviceName()); + dto.setTankId(list.getFirst().getDeviceLedgerId()); + dto.setTankName(list.getFirst().getDeviceName()); + dto.setOrderNum(1); + // 遍历list + for (DeviceMonitorVO vo : list) { + // 判断paramType,paramType=1,运行状态,paramType=4输出频率,paramType=38,故障复位,paramType=11,水箱液位,paramType=13,压力,paramType=5.报警信号 + switch (vo.getParamType()) { + case "1": + // 增加判断other_name=1,运行状态 + if (vo.getCollectName().contains("1")) { + dto.setUpWaterState1(vo.getCollectValue()); + } else if (vo.getCollectName().contains("2")) { + dto.setUpWaterState2(vo.getCollectValue()); + } else if (vo.getCollectName().contains("3")) { + dto.setUpWaterState3(vo.getCollectValue()); + } + break; + case "4": + dto.setFreq1(vo.getCollectValue()); + dto.setFreq2(vo.getCollectValue()); + dto.setFreq3(vo.getCollectValue()); + break; + case "5": + dto.setIsWarning(vo.getCollectValue()); + break; + case "38": + dto.setIsFault(vo.getCollectValue()); + break; + case "11": + dto.setWaterLevel1(vo.getCollectValue()); + break; + case "13": + if (vo.getCollectName().contains("入口压力")) { + dto.setInPress(vo.getCollectValue()); + } else if (vo.getCollectName().contains("出口压力")) { + dto.setOutPress(vo.getCollectValue()); + } else if (vo.getCollectName().contains("目标压力")) { + dto.setGoalPress(vo.getCollectValue()); + } + break; + default: + break; + } + } + return List.of(dto); + } + return List.of(); } @Override