装置通讯检测

This commit is contained in:
2024-12-19 10:17:29 +08:00
parent 7d88776633
commit 8760821aec
3 changed files with 61 additions and 32 deletions

View File

@@ -72,10 +72,6 @@ public class SocketDevResponseService {
Map<String, String> devNameMapComm = new HashMap<>(); Map<String, String> devNameMapComm = new HashMap<>();
/**
* 所有装置通道信息
*/
List<String> moniterIdListXieyi = new ArrayList<>();
/** /**
* 成功结束的装置 * 成功结束的装置
*/ */
@@ -88,7 +84,9 @@ public class SocketDevResponseService {
public void deal(PreDetectionParam param, String msg) { public void deal(PreDetectionParam param, String msg) {
SocketDataMsg socketDataMsg = MsgUtil.socketDataMsg(msg); SocketDataMsg socketDataMsg = MsgUtil.socketDataMsg(msg);
SourceOperateCodeEnum sourceOperateCodeEnum = SourceOperateCodeEnum.getDictDataEnumByCode(socketDataMsg.getRequestId()); SourceOperateCodeEnum sourceOperateCodeEnum = SourceOperateCodeEnum.getDictDataEnumByCode(socketDataMsg.getRequestId());
String userKey = param.getUserPageId() + handlerStr;
switch (sourceOperateCodeEnum) { switch (sourceOperateCodeEnum) {
case YJC_SBTXJY: case YJC_SBTXJY:
@@ -96,12 +94,25 @@ public class SocketDevResponseService {
break; break;
case QUITE: case QUITE:
SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode()); SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode());
String userKey = param.getUserPageId() + handlerStr; SourceOperateCodeEnum operateCodeEnum = SourceOperateCodeEnum.getDictDataEnumByCode(socketDataMsg.getOperateCode());
SocketMsg socketMsg = new SocketMsg();
switch (dictDataEnumByCode) { switch (dictDataEnumByCode) {
case SUCCESS: case SUCCESS:
//通讯校验成功 //通讯校验成功
webSocketHandler.sendMsgToUser(userKey, msg); switch (operateCodeEnum){
case QUIT_INIT_01:
break;
case QUIT_INIT_02:
socketMsg.setRequestId("quit");
socketMsg.setOperateCode("QUIT_FUNEND$01");
SocketManager.sendMsg(userKey, JSON.toJSONString(socketMsg));
break;
case QUIT_INIT_03:
socketMsg.setRequestId("quit");
socketMsg.setOperateCode("QUIT_FUNEND$02");
SocketManager.sendMsg(userKey, JSON.toJSONString(socketMsg));
break;
}
break; break;
case UNPROCESSED_BUSINESS: case UNPROCESSED_BUSINESS:
break; break;
@@ -125,6 +136,9 @@ public class SocketDevResponseService {
private Map<String, Map<String, Integer>> reloverMap = new HashMap<>(); private Map<String, Map<String, Integer>> reloverMap = new HashMap<>();
/**
* 装置通讯检测
*/
private void devComm(SocketDataMsg socketDataMsg, PreDetectionParam param, String msg) { private void devComm(SocketDataMsg socketDataMsg, PreDetectionParam param, String msg) {
SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode()); SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode());
String s = param.getUserPageId() + handlerStr; String s = param.getUserPageId() + handlerStr;
@@ -167,13 +181,7 @@ public class SocketDevResponseService {
break; break;
case RE_OPERATE: case RE_OPERATE:
//发起关闭操作 //发起关闭操作
socketMsg.setRequestId("quit"); quitSend(param,socketDataMsg,socketMsg);
socketMsg.setOperateCode("QUIT_FUNEND$01");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
socketMsg.setOperateCode("QUIT_FUNEND$02");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
socketMsg.setOperateCode("QUIT_FUNEND$03");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
break; break;
default: default:
WebSocketVO webSocketVO = new WebSocketVO(); WebSocketVO webSocketVO = new WebSocketVO();
@@ -183,7 +191,9 @@ public class SocketDevResponseService {
} }
} }
/**
* 装置协议检测
*/
private void devXieyi(SocketDataMsg socketDataMsg, PreDetectionParam param, String msg) { private void devXieyi(SocketDataMsg socketDataMsg, PreDetectionParam param, String msg) {
SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode()); SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode());
SocketMsg socketMsg = new SocketMsg(); SocketMsg socketMsg = new SocketMsg();
@@ -192,13 +202,13 @@ public class SocketDevResponseService {
switch (dictDataEnumByCode) { switch (dictDataEnumByCode) {
case SUCCESS: case SUCCESS:
webSocketHandler.sendMsgToUser(param.getUserPageId(), msg); webSocketHandler.sendMsgToUser(param.getUserPageId(), msg);
System.out.println(successXieyi.size() + "=====" + moniterIdListXieyi.size());
JSONObject jsonObject = JSON.parseObject(msg); JSONObject jsonObject = JSON.parseObject(msg);
String mId = jsonObject.get("data").toString(); String mId = jsonObject.get("data").toString();
String type = jsonObject.get("operateCode").toString(); String type = jsonObject.get("operateCode").toString();
if (type.equals(SourceOperateCodeEnum.DEV_INIT_GATHER_02.getValue())) { if (type.equals(SourceOperateCodeEnum.DEV_INIT_GATHER_02.getValue())) {
successXieyi.add(mId); successXieyi.add(mId);
if (successXieyi.size() == moniterIdListXieyi.size()) { if (successXieyi.size() == moniterIdListComm.size()) {
//协议3校验 //协议3校验
successXieyi = new ArrayList<>(); successXieyi = new ArrayList<>();
@@ -216,8 +226,9 @@ public class SocketDevResponseService {
} }
} else if (type.equals(SourceOperateCodeEnum.DEV_INIT_GATHER_03.getValue())) { } else if (type.equals(SourceOperateCodeEnum.DEV_INIT_GATHER_03.getValue())) {
System.out.println(successXieyi3.size() + "=====" + moniterIdListComm.size());
successXieyi3.add(mId); successXieyi3.add(mId);
if (successXieyi.size() == moniterIdListXieyi.size()) { if (successXieyi3.size() == moniterIdListComm.size()) {
System.out.println("开始相序校验++++++++++"); System.out.println("开始相序校验++++++++++");
@@ -230,14 +241,7 @@ public class SocketDevResponseService {
break; break;
case RE_OPERATE: case RE_OPERATE:
//发起关闭操作 //发起关闭操作
quitSend(param,socketDataMsg,socketMsg);
socketMsg.setRequestId("quit");
socketMsg.setOperateCode("QUIT_FUNEND$01");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
socketMsg.setOperateCode("QUIT_FUNEND$02");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
socketMsg.setOperateCode("QUIT_FUNEND$03");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
break; break;
default: default:
WebSocketVO webSocketVO = new WebSocketVO(); WebSocketVO webSocketVO = new WebSocketVO();
@@ -247,6 +251,28 @@ public class SocketDevResponseService {
} }
} }
/**
* 退出检测
*/
private void quitSend(PreDetectionParam param,SocketDataMsg socketDataMsg,SocketMsg socketMsg){
SourceOperateCodeEnum operateCodeEnum = SourceOperateCodeEnum.getDictDataEnumByCode(socketDataMsg.getOperateCode());
socketMsg.setRequestId(SourceOperateCodeEnum.QUITE.getValue());
switch (operateCodeEnum){
case DEV_INIT_GATHER_01:
socketMsg.setOperateCode(SourceOperateCodeEnum.QUIT_INIT_01.getValue());
SocketManager.sendMsg(param.getUserPageId()+handlerStr, JSON.toJSONString(socketMsg));
break;
case DEV_INIT_GATHER_02:
socketMsg.setOperateCode(SourceOperateCodeEnum.QUIT_INIT_02.getValue());
SocketManager.sendMsg(param.getUserPageId()+handlerStr, JSON.toJSONString(socketMsg));
break;
case DEV_INIT_GATHER_03:
socketMsg.setOperateCode(SourceOperateCodeEnum.QUIT_INIT_03.getValue());
SocketManager.sendMsg(param.getUserPageId()+handlerStr, JSON.toJSONString(socketMsg));
break;
}
}
public void devXu(PreDetectionParam param, SocketDataMsg socketDataMsg) { public void devXu(PreDetectionParam param, SocketDataMsg socketDataMsg) {
if (CollUtil.isEmpty(moniterIdList)) { if (CollUtil.isEmpty(moniterIdList)) {
@@ -401,7 +427,6 @@ public class SocketDevResponseService {
this.successComm = new ArrayList<>(); this.successComm = new ArrayList<>();
this.devNameMapComm = new HashMap<>(); this.devNameMapComm = new HashMap<>();
this.moniterIdListXieyi = new ArrayList<>();
this.successXieyi = new ArrayList<>(); this.successXieyi = new ArrayList<>();
this.successXieyi3 = new ArrayList<>(); this.successXieyi3 = new ArrayList<>();
this.devNameMapXieyi = new HashMap<>(); this.devNameMapXieyi = new HashMap<>();

View File

@@ -30,6 +30,10 @@ public enum SourceOperateCodeEnum {
DEV_DATA_REQUEST_02("DATA_REQUEST$02", "实时采集申请"), DEV_DATA_REQUEST_02("DATA_REQUEST$02", "实时采集申请"),
DEV_DATA_REQUEST_03("DATA_REQUEST$03", "暂态采集申请"), DEV_DATA_REQUEST_03("DATA_REQUEST$03", "暂态采集申请"),
QUIT_INIT_01("QUIT_FUNEND$01", "关闭统计申请"),
QUIT_INIT_02("QUIT_FUNEND$02", "关闭实时申请"),
QUIT_INIT_03("QUIT_FUNEND$03", "关闭暂态申请"),
@@ -39,12 +43,12 @@ public enum SourceOperateCodeEnum {
YJC_XUJY("YJC_xujy", "预检测_相序校验"), YJC_XUJY("YJC_xujy", "预检测_相序校验"),
QUITE("quit","预监测_关闭设备通讯检测") QUITE("quit","预监测_关闭设备通讯初始化")
; ;
private String value; private final String value;
private String msg; private final String msg;
SourceOperateCodeEnum(String value, String msg) { SourceOperateCodeEnum(String value, String msg) {
this.value = value; this.value = value;

View File

@@ -42,8 +42,8 @@ public enum SourceResponseCodeEnum {
; ;
private Integer code; private final Integer code;
private String message; private final String message;
SourceResponseCodeEnum(Integer code, String message) { SourceResponseCodeEnum(Integer code, String message) {
this.code = code; this.code = code;