diff --git a/iot-analysis/analysis-rt/rt-boot/src/main/java/com/njcn/rt/service/impl/RtServiceImpl.java b/iot-analysis/analysis-rt/rt-boot/src/main/java/com/njcn/rt/service/impl/RtServiceImpl.java index bbd7007..b888a54 100644 --- a/iot-analysis/analysis-rt/rt-boot/src/main/java/com/njcn/rt/service/impl/RtServiceImpl.java +++ b/iot-analysis/analysis-rt/rt-boot/src/main/java/com/njcn/rt/service/impl/RtServiceImpl.java @@ -299,12 +299,12 @@ public class RtServiceImpl implements IRtService { baseRealDataSet.setSB(FloatUtils.get2Float(map.get("Pq_SB"))); baseRealDataSet.setSC(FloatUtils.get2Float(map.get("Pq_SC"))); baseRealDataSet.setSTot(FloatUtils.get2Float(map.get("Pq_TotSM"))); - //功率因数 + //视在功率因数 baseRealDataSet.setPfA(FloatUtils.get2Float(map.get("Pq_PFA"))); baseRealDataSet.setPfB(FloatUtils.get2Float(map.get("Pq_PFB"))); baseRealDataSet.setPfC(FloatUtils.get2Float(map.get("Pq_PFC"))); baseRealDataSet.setPfTot(FloatUtils.get2Float(map.get("Pq_TotPFM"))); - //基波功率因数 + //位移功率因数 baseRealDataSet.setDpfA(FloatUtils.get2Float(map.get("Pq_DFA"))); baseRealDataSet.setDpfB(FloatUtils.get2Float(map.get("Pq_DFB"))); baseRealDataSet.setDpfC(FloatUtils.get2Float(map.get("Pq_DFC"))); diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml b/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml index 0e54a0a..6fbea5c 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml +++ b/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml @@ -99,6 +99,11 @@ event-common 1.0.0 + + org.springframework.boot + spring-boot-starter-websocket + 2.7.12 + diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveAnalysisServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveAnalysisServiceImpl.java index a191b6d..6911ff4 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveAnalysisServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveAnalysisServiceImpl.java @@ -1,8 +1,6 @@ package com.njcn.zlevent.service.impl; import cn.hutool.core.collection.CollectionUtil; -import com.github.tocrhz.mqtt.publisher.MqttPublisher; -import com.njcn.access.api.CsTopicFeignClient; import com.njcn.access.utils.ChannelObjectUtil; import com.njcn.access.utils.FileCommonUtils; import com.njcn.access.utils.MqttUtil; @@ -23,7 +21,6 @@ import com.njcn.zlevent.pojo.dto.WaveTimeDto; import com.njcn.zlevent.service.ICsWaveAnalysisService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; @@ -43,8 +40,6 @@ import java.util.stream.Collectors; public class CsWaveAnalysisServiceImpl implements ICsWaveAnalysisService { private final EquipmentFeignClient equipmentFeignClient; - private final MqttPublisher publisher; - private final CsTopicFeignClient csTopicFeignClient; private final RedisUtil redisUtil; private final CsLineFeignClient csLineFeignClient; private final DicDataFeignClient dicDataFeignClient; @@ -172,16 +167,17 @@ public class CsWaveAnalysisServiceImpl implements ICsWaveAnalysisService { throw new BusinessException(StatResponseEnum.LINE_NULL); } for (CsLinePO item : lineList) { - DictData dictData = dicDataFeignClient.getDicDataById(item.getPosition()).getData(); - if (Objects.isNull(dictData)){ - throw new BusinessException(StatResponseEnum.DICT_NULL); - } - if (Objects.equals(dictData.getCode(), DicDataEnum.OUTPUT_SIDE.getCode())){ - map.put(0,item.getLineId()); - } else if (Objects.equals(dictData.getCode(), DicDataEnum.GRID_SIDE.getCode())){ - map.put(1,item.getLineId()); - } else if (Objects.equals(dictData.getCode(), DicDataEnum.LOAD_SIDE.getCode())){ - map.put(2,item.getLineId()); + if (Objects.isNull(item.getPosition())){ + map.put(item.getClDid(),item.getLineId()); + } else { + DictData dictData = dicDataFeignClient.getDicDataById(item.getPosition()).getData(); + if (Objects.equals(dictData.getCode(), DicDataEnum.OUTPUT_SIDE.getCode())){ + map.put(0,item.getLineId()); + } else if (Objects.equals(dictData.getCode(), DicDataEnum.GRID_SIDE.getCode())){ + map.put(1,item.getLineId()); + } else if (Objects.equals(dictData.getCode(), DicDataEnum.LOAD_SIDE.getCode())){ + map.put(2,item.getLineId()); + } } } redisUtil.saveByKeyWithExpire(AppRedisKey.LINE_POSITION+id,map,30L); diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java index eb1de45..e5cce0c 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java @@ -26,6 +26,7 @@ import com.njcn.redis.pojo.enums.AppRedisKey; import com.njcn.redis.utils.RedisUtil; import com.njcn.stat.enums.StatResponseEnum; import com.njcn.system.api.DicDataFeignClient; +import com.njcn.system.api.DictTreeFeignClient; import com.njcn.system.api.EpdFeignClient; import com.njcn.system.enums.DicDataEnum; import com.njcn.system.pojo.dto.EpdDTO; @@ -77,6 +78,7 @@ public class EventServiceImpl implements IEventService { private final SendEventUtils sendEventUtils; private final WlRecordFeignClient wlRecordFeignClient; private final WlRmpEventDetailMapper wlRmpEventDetailMapper; + private final DictTreeFeignClient dictTreeFeignClient; @Override @DSTransactional @@ -96,10 +98,10 @@ public class EventServiceImpl implements IEventService { } //获取装置id CsEquipmentDeliveryPO po = equipmentFeignClient.findDevByNDid(appEventMessage.getId()).getData(); - //获取设备类型 true:治理设备 false:其他类型的设备 - boolean devModel = equipmentFeignClient.judgeDevModel(appEventMessage.getId()).getData(); + //判断设备型号 + String code = dictTreeFeignClient.queryById(po.getDevType()).getData().getCode(); try { - if (devModel) { + if (Objects.equals(DicDataEnum.CONNECT_DEV.getCode(),code)) { if (Objects.equals(appEventMessage.getDid(),1)){ Object object = new Gson().fromJson(String.valueOf(redisUtil.getObjectByKey(AppRedisKey.LINE_POSITION+appEventMessage.getId())), Map.class).get("0"); if (ObjectUtil.isNotNull(object)) { @@ -173,7 +175,7 @@ public class EventServiceImpl implements IEventService { fields.put(param.getName(),param.getData()); } //只有治理型号的设备有监测位置 - if (devModel) { + if (Objects.equals(DicDataEnum.CONNECT_DEV.getCode(),code)) { if (appEventMessage.getMsg().getClDid() == 1) { fields.put("Evt_Param_Position","电网侧"); csEvent.setLocation("grid"); @@ -420,16 +422,17 @@ public class EventServiceImpl implements IEventService { throw new BusinessException(StatResponseEnum.LINE_NULL); } for (CsLinePO item : lineList) { - DictData dictData = dicDataFeignClient.getDicDataById(item.getPosition()).getData(); - if (Objects.isNull(dictData)){ - throw new BusinessException(StatResponseEnum.DICT_NULL); - } - if (Objects.equals(dictData.getCode(), DicDataEnum.OUTPUT_SIDE.getCode())){ - map.put(0,item.getLineId()); - } else if (Objects.equals(dictData.getCode(), DicDataEnum.GRID_SIDE.getCode())){ - map.put(1,item.getLineId()); - } else if (Objects.equals(dictData.getCode(), DicDataEnum.LOAD_SIDE.getCode())){ - map.put(2,item.getLineId()); + if (Objects.isNull(item.getPosition())){ + map.put(item.getClDid(),item.getLineId()); + } else { + DictData dictData = dicDataFeignClient.getDicDataById(item.getPosition()).getData(); + if (Objects.equals(dictData.getCode(), DicDataEnum.OUTPUT_SIDE.getCode())){ + map.put(0,item.getLineId()); + } else if (Objects.equals(dictData.getCode(), DicDataEnum.GRID_SIDE.getCode())){ + map.put(1,item.getLineId()); + } else if (Objects.equals(dictData.getCode(), DicDataEnum.LOAD_SIDE.getCode())){ + map.put(2,item.getLineId()); + } } } redisUtil.saveByKeyWithExpire(AppRedisKey.LINE_POSITION+id,map,30L);