代码调整

This commit is contained in:
2025-01-08 09:47:05 +08:00
parent a5227c372f
commit 28b8ca4ea7
6 changed files with 35 additions and 31 deletions

View File

@@ -12,6 +12,7 @@ import com.njcn.gather.detection.pojo.po.DevData;
import com.njcn.gather.detection.pojo.po.SourceCompareDev; import com.njcn.gather.detection.pojo.po.SourceCompareDev;
import com.njcn.gather.detection.pojo.vo.*; import com.njcn.gather.detection.pojo.vo.*;
import com.njcn.gather.detection.service.impl.DetectionServiceImpl; import com.njcn.gather.detection.service.impl.DetectionServiceImpl;
import com.njcn.gather.detection.util.socket.CnSocketUtil;
import com.njcn.gather.detection.util.socket.MsgUtil; import com.njcn.gather.detection.util.socket.MsgUtil;
import com.njcn.gather.detection.util.socket.SocketManager; import com.njcn.gather.detection.util.socket.SocketManager;
import com.njcn.gather.detection.util.socket.web.WebSocketHandler; import com.njcn.gather.detection.util.socket.web.WebSocketHandler;
@@ -58,7 +59,7 @@ public class SocketDevResponseService {
private final DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME; private final DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME;
private final List<String> nonHarmonicList = Stream.of(DicDataEnum.FREQ.getCode(), DicDataEnum.V.getCode(), DicDataEnum.I.getCode(), DicDataEnum.IMBV.getCode(), DicDataEnum.IMBA.getCode()).collect(Collectors.toList()); private final List<String> nonHarmonicList = Stream.of(DicDataEnum.FREQ.getCode(), DicDataEnum.V.getCode(), DicDataEnum.I.getCode(), DicDataEnum.IMBV.getCode(), DicDataEnum.IMBA.getCode(),DicDataEnum.VOLTAGE.getCode()).collect(Collectors.toList());
private final List<String> harmonicList = Stream.of(DicDataEnum.HV.getCode(), DicDataEnum.HI.getCode(), DicDataEnum.HP.getCode(), DicDataEnum.HSV.getCode(), DicDataEnum.HSI.getCode()).collect(Collectors.toList()); private final List<String> harmonicList = Stream.of(DicDataEnum.HV.getCode(), DicDataEnum.HI.getCode(), DicDataEnum.HP.getCode(), DicDataEnum.HSV.getCode(), DicDataEnum.HSI.getCode()).collect(Collectors.toList());
private final WebSocketHandler webSocketHandler; private final WebSocketHandler webSocketHandler;
@@ -389,7 +390,7 @@ public class SocketDevResponseService {
} else if (XiNumberManager.stepNumber == 3) { } else if (XiNumberManager.stepNumber == 3) {
sendWebSocket(param.getUserPageId(), SourceOperateCodeEnum.Coefficient_Check.getValue(), SourceOperateCodeEnum.small_comp_end.getValue(), XiNumberManager.devParameterList.get(1)); sendWebSocket(param.getUserPageId(), SourceOperateCodeEnum.Coefficient_Check.getValue(), SourceOperateCodeEnum.small_comp_end.getValue(), XiNumberManager.devParameterList.get(1));
System.out.println("-------------------------已经全部结束----------------------"); System.out.println("-------------------------已经全部结束----------------------");
quitSend(param); CnSocketUtil.quitSend(param);
} }
} }
@@ -547,22 +548,20 @@ public class SocketDevResponseService {
case DEV_ERROR: case DEV_ERROR:
webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2)); webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2));
quitSend(param); CnSocketUtil.quitSend(param);
quitSendSource(param);
break; break;
case DEV_TARGET: case DEV_TARGET:
webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2)); webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2));
quitSend(param); CnSocketUtil.quitSend(param);
quitSendSource(param);
break; break;
case RE_OPERATE: case RE_OPERATE:
//出现已经初始化情况,发送用户用户确认是否继续检测 //出现已经初始化情况,发送用户用户确认是否继续检测
webSocketHandler.sendMsgToUser(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); webSocketHandler.sendMsgToUser(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
quitSend(param); CnSocketUtil.quitSend(param);
break; break;
case NO_INIT_DEV: case NO_INIT_DEV:
//发起关闭操作 //发起关闭操作
quitSend(param); CnSocketUtil.quitSend(param);
break; break;
default: default:
WebSocketVO<String> webSocketVO = new WebSocketVO<>(); WebSocketVO<String> webSocketVO = new WebSocketVO<>();
@@ -678,17 +677,17 @@ public class SocketDevResponseService {
break; break;
case DEV_ERROR: case DEV_ERROR:
webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2)); webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2));
quitSend(param); CnSocketUtil.quitSend(param);
break; break;
case DEV_TARGET: case DEV_TARGET:
webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2)); webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2));
quitSend(param); CnSocketUtil.quitSend(param);
break; break;
case RE_OPERATE: case RE_OPERATE:
//出现已经初始化情况,发送用户用户确认是否继续检测 //出现已经初始化情况,发送用户用户确认是否继续检测
webSocketHandler.sendMsgToUser(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); webSocketHandler.sendMsgToUser(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
quitSend(param); CnSocketUtil.quitSend(param);
break; break;
default: default:
WebSocketVO<String> webSocketVO = new WebSocketVO<>(); WebSocketVO<String> webSocketVO = new WebSocketVO<>();
@@ -752,7 +751,7 @@ public class SocketDevResponseService {
if(param.getOperateType().equals(SourceOperateCodeEnum.PRE_TEST.getValue())){ if(param.getOperateType().equals(SourceOperateCodeEnum.PRE_TEST.getValue())){
System.out.println("预检测流程接受-----------------关闭源"); System.out.println("预检测流程接受-----------------关闭源");
//同时关闭设备三个步骤 //同时关闭设备三个步骤
quitSend(param); CnSocketUtil.quitSend(param);
}else if(param.getOperateType().equals(SourceOperateCodeEnum.COEFFICIENT_TEST.getValue())){ }else if(param.getOperateType().equals(SourceOperateCodeEnum.COEFFICIENT_TEST.getValue())){
WebSocketVO<Object> webSocketVO = new WebSocketVO<>(); WebSocketVO<Object> webSocketVO = new WebSocketVO<>();
webSocketVO.setRequestId(SourceOperateCodeEnum.Coefficient_Check.getValue()); webSocketVO.setRequestId(SourceOperateCodeEnum.Coefficient_Check.getValue());
@@ -785,13 +784,11 @@ public class SocketDevResponseService {
break; break;
case DEV_ERROR: case DEV_ERROR:
webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2)); webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2));
quitSend(param); CnSocketUtil.quitSend(param);
quitSendSource(param);
break; break;
case DEV_TARGET: case DEV_TARGET:
webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2)); webSocketHandler.sendMsgToUser(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, devNameMapComm, 2));
quitSend(param); CnSocketUtil.quitSend(param);
quitSendSource(param);
break; break;
case RE_OPERATE: case RE_OPERATE:
break; break;
@@ -877,7 +874,7 @@ public class SocketDevResponseService {
SocketManager.sendMsg(param.getUserPageId() + handlerSourceStr, MsgUtil.toJsonWithNewLinePlain(xuMsg)); SocketManager.sendMsg(param.getUserPageId() + handlerSourceStr, MsgUtil.toJsonWithNewLinePlain(xuMsg));
} else { } else {
//TODO 是否最终检测完成需要推送给用户 //TODO 是否最终检测完成需要推送给用户
quitSend(param); CnSocketUtil.quitSend(param);
} }
successComm.clear(); successComm.clear();
@@ -932,7 +929,7 @@ public class SocketDevResponseService {
case QUIT_INIT_01: case QUIT_INIT_01:
//关闭所有 //关闭所有
SocketManager.removeUser(s); SocketManager.removeUser(s);
quitSendSource(param); CnSocketUtil.quitSendSource(param);
break; break;
case QUIT_INIT_02: case QUIT_INIT_02:
socketMsg.setRequestId("quit"); socketMsg.setRequestId("quit");
@@ -954,7 +951,7 @@ public class SocketDevResponseService {
switch (operateCodeEnum) { switch (operateCodeEnum) {
case QUIT_INIT_01: case QUIT_INIT_01:
SocketManager.removeUser(s); SocketManager.removeUser(s);
quitSendSource(param); CnSocketUtil.quitSendSource(param);
break; break;
case QUIT_INIT_02: case QUIT_INIT_02:
socketMsg.setRequestId("quit"); socketMsg.setRequestId("quit");
@@ -1179,7 +1176,10 @@ public class SocketDevResponseService {
* @date 2024/12/29 * @date 2024/12/29
*/ */
private void baseDataInsert(List<DevData> devDataList, SourceIssue sourceIssue, PreDetectionParam param, Map<String, String> checkDataMap) { private void baseDataInsert(List<DevData> devDataList, SourceIssue sourceIssue, PreDetectionParam param, Map<String, String> checkDataMap) {
Runnable runnable = () -> { // Runnable runnable = () -> {
System.out.println("原始数据插入数据库开始执行========================================="); System.out.println("原始数据插入数据库开始执行=========================================");
List<AdNonHarmonicResult> adNonHarmonicResultList = new ArrayList<>(); List<AdNonHarmonicResult> adNonHarmonicResultList = new ArrayList<>();
List<AdHarmonicResult> adHarmonicResultList = new ArrayList<>(); List<AdHarmonicResult> adHarmonicResultList = new ArrayList<>();
@@ -1286,8 +1286,8 @@ public class SocketDevResponseService {
detectionDataDealService.acceptAd(adHarmonicResultList, "1"); detectionDataDealService.acceptAd(adHarmonicResultList, "1");
} }
System.out.println("原始数据插入数据库执行成功========================================="); System.out.println("原始数据插入数据库执行成功=========================================");
}; // };
executorPool.submit(runnable); // executorPool.submit(runnable);
} }

View File

@@ -665,7 +665,7 @@ public class DetectionServiceImpl {
*/ */
private void setDetection(DictDataEnum dataRule, List<Double> harmDataList, PqErrSysDtls errSysDtl, DetectionData data, Double v) { private void setDetection(DictDataEnum dataRule, List<Double> harmDataList, PqErrSysDtls errSysDtl, DetectionData data, Double v) {
List<Double> qualifiedList = harmDataList.stream() List<Double> qualifiedList = harmDataList.stream()
.filter(x -> v == 0 ? x == v : NumberUtil.isIn(devSubtractChannelData(x, v, errSysDtl.getErrorValueType()), .filter(x -> v == 0 ? x == v : x > 0 && NumberUtil.isIn(devSubtractChannelData(x, v, errSysDtl.getErrorValueType()),
BigDecimal.valueOf(-errSysDtl.getMaxErrorValue()), BigDecimal.valueOf(-errSysDtl.getMaxErrorValue()),
BigDecimal.valueOf(errSysDtl.getMaxErrorValue()))).collect(Collectors.toList()); BigDecimal.valueOf(errSysDtl.getMaxErrorValue()))).collect(Collectors.toList());
data.setRadius(-errSysDtl.getMaxErrorValue() + "~" + errSysDtl.getMaxErrorValue()); data.setRadius(-errSysDtl.getMaxErrorValue() + "~" + errSysDtl.getMaxErrorValue());
@@ -764,7 +764,7 @@ public class DetectionServiceImpl {
public DetectionData rangeComparisonList(List<Double> list, List<PqErrSysDtls> pqErrSysDtls, Double data, Double channelData, DictDataEnum dataRule) { public DetectionData rangeComparisonList(List<Double> list, List<PqErrSysDtls> pqErrSysDtls, Double data, Double channelData, DictDataEnum dataRule) {
DetectionData detectionData = new DetectionData(); DetectionData detectionData = new DetectionData();
detectionData.setIsData(4); detectionData.setIsData(4);
detectionData.setData(list.get(0)); detectionData.setData(CollUtil.isNotEmpty(list) ? list.get(0) : null);
//先根据源所下发的数据,是否在误差体系范围内在则可以进行误差体系判断 //先根据源所下发的数据,是否在误差体系范围内在则可以进行误差体系判断
//获得误差体系 //获得误差体系
List<PqErrSysDtls> errSysDtls = pqErrSysDtls.stream().filter(x -> rangeComparison(multiply(x.getStartValue(), data, x.getConditionType()), List<PqErrSysDtls> errSysDtls = pqErrSysDtls.stream().filter(x -> rangeComparison(multiply(x.getStartValue(), data, x.getConditionType()),

View File

@@ -100,6 +100,8 @@ public class NettyDevClientHandler extends SimpleChannelInboundHandler<String> {
//闪变 //闪变
//CnSocketUtil.quitSend(param); //CnSocketUtil.quitSend(param);
} else if (sourceIssue.getType().equals(DicDataEnum.VOLTAGE.getCode()) || sourceIssue.getType().equals(DicDataEnum.HP.getCode())) { } else if (sourceIssue.getType().equals(DicDataEnum.VOLTAGE.getCode()) || sourceIssue.getType().equals(DicDataEnum.HP.getCode())) {
System.out.println("进入统计数据3分钟读超时。。。。。。");
CnSocketUtil.quitSend(param); CnSocketUtil.quitSend(param);
WebSocketVO<String> socketVO = new WebSocketVO<>(); WebSocketVO<String> socketVO = new WebSocketVO<>();
@@ -109,6 +111,7 @@ public class NettyDevClientHandler extends SimpleChannelInboundHandler<String> {
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketVO)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketVO));
//统计数据项 //统计数据项
}else { }else {
System.out.println("进入实时数据3分钟读超时。。。。。。");
//实时数据 //实时数据
CnSocketUtil.quitSend(param); CnSocketUtil.quitSend(param);
} }
@@ -116,8 +119,8 @@ public class NettyDevClientHandler extends SimpleChannelInboundHandler<String> {
} }
} }
System.out.println("进入10S超时。。。。。。");
//当连接超过10S和发送消息后10S无响应时候关闭channel
} }

View File

@@ -215,7 +215,8 @@ public class PqScriptDtlsServiceImpl extends ServiceImpl<PqScriptDtlsMapper, PqS
queryWrapper.selectAll(PqScriptDtls.class) queryWrapper.selectAll(PqScriptDtls.class)
.selectAs(DictTree::getCode, PqScriptDtls::getScriptCode) .selectAs(DictTree::getCode, PqScriptDtls::getScriptCode)
.leftJoin(DictTree.class, DictTree::getId, PqScriptDtls::getScriptType) .leftJoin(DictTree.class, DictTree::getId, PqScriptDtls::getScriptType)
.eq(PqScriptDtls::getEnable, 1);; .eq(PqScriptDtls::getEnable, 1);
if (isPhaseSequence.equals(CommonEnum.PHASE_TEST.getValue())) { if (isPhaseSequence.equals(CommonEnum.PHASE_TEST.getValue())) {
//相序 //相序
queryWrapper.eq(PqScriptDtls::getIndex, -1) queryWrapper.eq(PqScriptDtls::getIndex, -1)

View File

@@ -14,7 +14,7 @@
B_Value varchar(30) DEFAULT NULL COMMENT 'B相值', B_Value varchar(30) DEFAULT NULL COMMENT 'B相值',
C_Value varchar(30) DEFAULT NULL COMMENT 'C相值', C_Value varchar(30) DEFAULT NULL COMMENT 'C相值',
T_Value varchar(30) DEFAULT NULL COMMENT 'T相值(没有相别的则存这里)', T_Value varchar(30) DEFAULT NULL COMMENT 'T相值(没有相别的则存这里)',
PRIMARY KEY (Monitor_Id, Time_Id, Script_Id, Sort, Data_Type) PRIMARY KEY (Monitor_Id, Time_Id, Script_Id, Sort, AD_Type)
) COMMENT='监测数据表'; ) COMMENT='监测数据表';
</update> </update>
@@ -37,7 +37,7 @@
B_Value json NULL COMMENT 'B相值', B_Value json NULL COMMENT 'B相值',
C_Value json NULL COMMENT 'C相值', C_Value json NULL COMMENT 'C相值',
T_Value json NULL COMMENT 'T相值(没有相别的则存这里)', T_Value json NULL COMMENT 'T相值(没有相别的则存这里)',
PRIMARY KEY (Monitor_Id, Script_Id, Sort, Data_Type) PRIMARY KEY (Monitor_Id, Script_Id, Sort, AD_Type)
) COMMENT='监测数据表'; ) COMMENT='监测数据表';
</update> </update>

View File

@@ -44,7 +44,7 @@ public class TableGenServiceImpl implements TableGenService {
" Data_Type CHAR(32) NOT NULL COMMENT '数据指标只有数据源为分钟统计时候才会使用最大、最小、平均、CP95默认平均值字典表',\n" + " Data_Type CHAR(32) NOT NULL COMMENT '数据指标只有数据源为分钟统计时候才会使用最大、最小、平均、CP95默认平均值字典表',\n" +
" Result_Flag int(1) NULL COMMENT '0.不合格 1.合格',\n" + " Result_Flag int(1) NULL COMMENT '0.不合格 1.合格',\n" +
A+B+C+ A+B+C+
" PRIMARY KEY (Monitor_Id, Script_Id, Sort, Data_Type)\n" + " PRIMARY KEY (Monitor_Id,Time_Id, Script_Id, Sort, AD_Type)\n" +
") COMMENT='监测数据表';"; ") COMMENT='监测数据表';";
tableGenMapper.genAdHarmonicTable(sql); tableGenMapper.genAdHarmonicTable(sql);
@@ -57,7 +57,7 @@ public class TableGenServiceImpl implements TableGenService {
" Data_Type CHAR(32) NOT NULL COMMENT '数据指标只有数据源为分钟统计时候才会使用最大、最小、平均、CP95默认平均值字典表',\n" + " Data_Type CHAR(32) NOT NULL COMMENT '数据指标只有数据源为分钟统计时候才会使用最大、最小、平均、CP95默认平均值字典表',\n" +
" Result_Flag int(1) NOT NULL COMMENT '0.不合格 1.合格',\n" + " Result_Flag int(1) NOT NULL COMMENT '0.不合格 1.合格',\n" +
A+B+C+ A+B+C+
" PRIMARY KEY (Monitor_Id, Script_Id, Sort, Data_Type)\n" + " PRIMARY KEY (Monitor_Id, Script_Id, Sort, AD_Type)\n" +
") COMMENT='监测数据表';"; ") COMMENT='监测数据表';";
tableGenMapper.genAdHarmonicTable(sql2); tableGenMapper.genAdHarmonicTable(sql2);
} }