diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/modules/quartz/task/NdcAutoReconnection.java b/acs/hd/nladmin-system/src/main/java/org/nl/modules/quartz/task/NdcAutoReconnection.java new file mode 100644 index 0000000..3b13146 --- /dev/null +++ b/acs/hd/nladmin-system/src/main/java/org/nl/modules/quartz/task/NdcAutoReconnection.java @@ -0,0 +1,34 @@ +package org.nl.modules.quartz.task; + +import cn.hutool.core.util.StrUtil; +import lombok.extern.slf4j.Slf4j; +import org.nl.acs.config.AcsConfig; +import org.nl.acs.config.server.AcsConfigService; +import org.nl.start.auto.run.AutoRunService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * NDC自动重连 + */ +@Slf4j +@Component +public class NdcAutoReconnection { + + @Autowired + AcsConfigService acsConfigService; + + @Autowired + AutoRunService autoRunService; + + public void run(String threadCode) throws Exception { + if (StrUtil.equals(acsConfigService.findByCode(AcsConfig.NDC_RECONNECTION).getValue().toString(), "1")) { + String[] threadCodes = threadCode.split(","); + for (String code : threadCodes) { + if (!autoRunService.getThreadByCode(code).isAlive()) { + autoRunService.startThread(code); + } + } + } + } +} diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/start/auto/run/NDCSocketConnectionAutoRun.java b/acs/hd/nladmin-system/src/main/java/org/nl/start/auto/run/NDCSocketConnectionAutoRun.java index c37b099..a645ec7 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/start/auto/run/NDCSocketConnectionAutoRun.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/start/auto/run/NDCSocketConnectionAutoRun.java @@ -139,8 +139,8 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { if (ikey != 0) { inst = instructionService.findByCodeFromCache(String.valueOf(ikey)); } -// log.info("接收agv上报信息:" + bs); -// log.info("接收agv上报信息:" + "phase--" + phase + " index--" + index + " ikey--" + ikey + " agvaddr--" + agvaddr + " Car--" + carno); + log.info("接收agv上报信息:" + bs); + log.info("接收agv上报信息:" + "phase--" + phase + " index--" + index + " ikey--" + ikey + " agvaddr--" + agvaddr + " Car--" + carno); logServer.deviceExecuteLog("ndc", "","","接收agv上报信息:" + bs); logServer.deviceExecuteLog("ndc", "","","接收agv上报信息:" + "phase--" + phase + " index--" + index + " ikey--" + ikey + " agvaddr--" + agvaddr + " Car--" + carno); Device device = null; @@ -199,7 +199,8 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { else if (phase == 0x03) { if (ObjectUtil.isEmpty(inst)) { logServer.deviceExecuteLog("ndc", "","","未找到指令号对应的指令:" + ikey); - return; + log.info("未找到指令号{}对应的指令", ikey); + continue; } if (device_code.equals("MDJXS601")) { data = AgvService.sendAgvOneModeInst(phase, index, 0); @@ -298,8 +299,9 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { // 取货完成请求离开 else if (phase == 0x05) { if (ObjectUtil.isEmpty(inst)) { + log.info("未找到指令号{}对应的指令", ikey); logServer.deviceExecuteLog("ndc", "","","未找到指令号对应的指令:" + ikey); - return; + continue; } if (device_code.equals("MDJXS601")) { data = AgvService.sendAgvOneModeInst(phase, index, 0); @@ -391,8 +393,9 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { // 到达扫码点 else if (phase == 0x06) { if (ObjectUtil.isEmpty(inst)) { + log.info("未找到指令号{}对应的指令", ikey); logServer.deviceExecuteLog("ndc", "","","未找到指令号对应的指令:" + ikey); - return; + continue; } logServer.deviceExecuteLog("ndc","","","phase==0x06," + "指令号:" + ikey + ",address:RYSMW01"); //检测站点 @@ -415,8 +418,9 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { //请求放货 else if (phase == 0x07) { if (ObjectUtil.isEmpty(inst)) { + log.info("未找到指令号{}对应的指令", ikey); logServer.deviceExecuteLog("ndc", "","","未找到指令号对应的指令:" + ikey); - return; + continue; } if (device_code.equals("MDJXS601")) { data = AgvService.sendAgvOneModeInst(phase, index, 0); @@ -496,8 +500,9 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { // 放货完成请求离开 else if (phase == 0x09) { if (ObjectUtil.isEmpty(inst)) { + log.info("未找到指令号{}对应的指令", ikey); logServer.deviceExecuteLog("ndc", "","","未找到指令号对应的指令:" + ikey); - return; + continue; } if (device_code.equals("MDJXS601")) { data = AgvService.sendAgvOneModeInst(phase, index, 0); diff --git a/acs/hd/nladmin-system/src/main/resources/log/AcsToWms.xml b/acs/hd/nladmin-system/src/main/resources/log/AcsToWms.xml index 1fd47da..ab7f81f 100644 --- a/acs/hd/nladmin-system/src/main/resources/log/AcsToWms.xml +++ b/acs/hd/nladmin-system/src/main/resources/log/AcsToWms.xml @@ -10,7 +10,7 @@ 15 - 200MB + 50MB 2GB diff --git a/acs/hd/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml b/acs/hd/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml index e5c7742..bed3521 100644 --- a/acs/hd/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml +++ b/acs/hd/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml @@ -3,14 +3,14 @@ - + ${LOG_HOME}/NDC交互日志/%d{yyyy-MM-dd}.%i.log 15 - 200MB + 50MB 2GB @@ -28,6 +28,6 @@ - + diff --git a/acs/hd/nladmin-system/src/main/resources/log/WmsToAcs.xml b/acs/hd/nladmin-system/src/main/resources/log/WmsToAcs.xml index 1af106d..809a57f 100644 --- a/acs/hd/nladmin-system/src/main/resources/log/WmsToAcs.xml +++ b/acs/hd/nladmin-system/src/main/resources/log/WmsToAcs.xml @@ -1,30 +1,33 @@ - - - + + + + + + ${LOG_HOME}/WMS下发ACS/%d{yyyy-MM-dd}.%i.log + + 15 + + 50MB + + 2GB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + ${log.charset} + - - - 1000 - - ${LOKI_URL} - - - - - ${log.pattern} - - true - + + - +