From 48c79b721e0b9a3009240ac02aae8ef5ffda17af Mon Sep 17 00:00:00 2001
From: xy <748613696@qq.com>
Date: Thu, 16 Apr 2026 16:15:23 +0800
Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E8=B0=83?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../njcn/rt/service/impl/RtServiceImpl.java | 4 +--
.../analysis-zl-event/zl-event-boot/pom.xml | 5 +++
.../impl/CsWaveAnalysisServiceImpl.java | 26 +++++++---------
.../service/impl/EventServiceImpl.java | 31 ++++++++++---------
4 files changed, 35 insertions(+), 31 deletions(-)
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);