diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/agv/rest/MagicAgvController.java b/acs/nladmin-system/src/main/java/org/nl/acs/agv/rest/MagicAgvController.java index 4badde5..4cd6420 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/agv/rest/MagicAgvController.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/agv/rest/MagicAgvController.java @@ -6,6 +6,8 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.nl.acs.agv.server.MagicAgvService; import org.nl.modules.logging.annotation.Log; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PathVariable; @@ -19,7 +21,9 @@ import org.springframework.web.bind.annotation.RestController; @RequestMapping("/api/magic") @Slf4j public class MagicAgvController { - private final MagicAgvService magicAgvService; + @Autowired + @Lazy + private MagicAgvService magicAgvService; @PostMapping("/agvack/{device}") @Log("AGV请求离开") diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/MagicAgvServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/MagicAgvServiceImpl.java index d074229..084bafa 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/MagicAgvServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/MagicAgvServiceImpl.java @@ -27,6 +27,8 @@ import org.nl.acs.opc.DeviceType; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.system.service.ParamService; import org.nl.modules.wql.util.SpringContextHolder; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.util.Arrays; @@ -38,9 +40,12 @@ import java.util.Map; @Service @RequiredArgsConstructor public class MagicAgvServiceImpl implements MagicAgvService { - private final DeviceAppService deviceAppService; - private final ParamService paramService; - private final AcsToWmsService acsToWmsService; + @Autowired + private DeviceAppService deviceAppService; + @Autowired + private ParamService paramService; + @Autowired + private AcsToWmsService acsToWmsService; Map AGVDeviceStatus = new HashMap(); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/auto/AcsInit.java b/acs/nladmin-system/src/main/java/org/nl/acs/auto/AcsInit.java index d6525ff..1f7bce4 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/auto/AcsInit.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/auto/AcsInit.java @@ -4,6 +4,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.nl.acs.auto.initial.ApplicationAutoInitialExecuter; import org.nl.acs.auto.initial.WebAutoInitialExecuter; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.core.annotation.Order; @@ -17,8 +18,10 @@ import org.springframework.stereotype.Component; @RequiredArgsConstructor @Order(50) public class AcsInit implements ApplicationRunner { - private final ApplicationAutoInitialExecuter applicationAutoInitialExecuter; - private final WebAutoInitialExecuter webAutoInitialExecuter; + @Autowired + private ApplicationAutoInitialExecuter applicationAutoInitialExecuter; + @Autowired + private WebAutoInitialExecuter webAutoInitialExecuter; @Override public void run(ApplicationArguments args) throws Exception { //随线程启动 diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java index b22e8a7..69507ac 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java @@ -62,7 +62,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic ParamService paramService = SpringContextHolder.getBean(ParamServiceImpl.class); InstructionService instructionService = SpringContextHolder.getBean(InstructionServiceImpl.class); TaskService taskService=SpringContextHolder.getBean(TaskServiceImpl.class); - AcsToWmsService acsToWmsService = SpringContextHolder.getBean(AcsToWmsServiceImpl.class); + AcsToWmsService acsToWmsService = SpringContextHolder.getBean(AcsToWmsService.class); NDCAgvService NDCAgvService = SpringContextHolder.getBean(NDCAgvService.class); DeviceExecuteLogService logService = SpringContextHolder.getBean(DeviceExecuteLogService.class); DeviceAppService deviceAppService = SpringContextHolder.getBean(DeviceAppService.class); @@ -179,7 +179,7 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //到达取货点 //(需要WCS反馈) } else if (phase == 0x03) { - log.info("==================AGV请求取货=================="); + log.info("================== =================="); if (ObjectUtil.isEmpty(inst)) { log.info("未找到指令:" + ikey); logService.deviceExecuteLog(device_code, "", "", "未找到指令 [" + ikey + "]"); @@ -230,15 +230,15 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //标准版-机械手对接位 if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) { lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver(); + Map map = new LinkedHashMap<>(); + map.put("to_command",2); + lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if (lnshPalletizingManipulatorSiteDeviceDriver.getMode() != 0 && lnshPalletizingManipulatorSiteDeviceDriver.getMove() != 0 && (lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 3 || lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 1) && (lnshPalletizingManipulatorSiteDeviceDriver.getAction() == 3 || lnshPalletizingManipulatorSiteDeviceDriver.getAction() == 1)) { inst.setExecute_status("1"); instructionService.update(inst); - Map map = new LinkedHashMap<>(); - map.put("to_command",2); - lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if(lnshPalletizingManipulatorSiteDeviceDriver.getTo_command()==2){ data = AgvService.sendAgvOneModeInst(phase, index, 0); }else { @@ -505,14 +505,14 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //标准版-机械手对接位 if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) { lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver(); + Map map = new LinkedHashMap<>(); + map.put("to_command",3); + lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if (lnshPalletizingManipulatorSiteDeviceDriver.getMode() != 0 && lnshPalletizingManipulatorSiteDeviceDriver.getMove() == 0 && (lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 3 || lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 2) ) { inst.setExecute_status("5"); - Map map = new LinkedHashMap<>(); - map.put("to_command",3); - lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if(lnshPalletizingManipulatorSiteDeviceDriver.getTo_command()==3){ data = AgvService.sendAgvOneModeInst(phase, index, 0); }else { @@ -780,15 +780,15 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //标准版-机械手对接位 if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) { lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver(); + Map map = new LinkedHashMap<>(); + map.put("to_command",4); + lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if (lnshPalletizingManipulatorSiteDeviceDriver.getMode() != 0 && lnshPalletizingManipulatorSiteDeviceDriver.getMove() == 0 && (lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 1 || lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 3) && (lnshPalletizingManipulatorSiteDeviceDriver.getAction() == 2 || lnshPalletizingManipulatorSiteDeviceDriver.getAction() == 3)) { inst.setExecute_status("3"); instructionService.update(inst); - Map map = new LinkedHashMap<>(); - map.put("to_command",4); - lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if(lnshPalletizingManipulatorSiteDeviceDriver.getTo_command()==4){ data = AgvService.sendAgvOneModeInst(phase, index, 0); }else { @@ -1047,14 +1047,14 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //标准版-机械手对接位 if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) { lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver(); + Map map = new LinkedHashMap<>(); + map.put("to_command",5); + lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if (lnshPalletizingManipulatorSiteDeviceDriver.getMode() != 0 && lnshPalletizingManipulatorSiteDeviceDriver.getMove() != 0 && (lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 2 || lnshPalletizingManipulatorSiteDeviceDriver.getIo_action() == 3)) { inst.setExecute_status("6"); instructionService.update(inst); - Map map = new LinkedHashMap<>(); - map.put("to_command",5); - lnshPalletizingManipulatorSiteDeviceDriver.writing(map); if(lnshPalletizingManipulatorSiteDeviceDriver.getTo_command()==5){ data = AgvService.sendAgvOneModeInst(phase, index, 0); }else { @@ -1130,17 +1130,17 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic String direction=task.getDirection(); if(ObjectUtil.isNotEmpty(direction)){ Integer direction1=Integer.parseInt(direction); + Map map = new LinkedHashMap<>(); + map.put("to_command",5); //困料位写入方向 - conveyorPressStationDeviceDriver.writing(2,direction1); + map.put("to_target",direction1); + conveyorPressStationDeviceDriver.writing(map); }else{ log.info("未输入方向"); } }else{ log.info("任务号为空"); } - Map map = new LinkedHashMap<>(); - map.put("to_command",5); - conveyorPressStationDeviceDriver.writing(map); data = AgvService.sendAgvOneModeInst(phase, index, 0); conveyorPressStationDeviceDriver.setMessage(""); flag = true; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java index af3f895..8489fcc 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java @@ -49,7 +49,7 @@ public class StandardOrdinarySiteDeviceDriver extends AbstractDeviceDriver imple RouteLineService routeLineService = SpringContextHolder.getBean(RouteLineService.class); - AcsToWmsService acsToWmsService = SpringContextHolder.getBean(AcsToWmsServiceImpl.class); + AcsToWmsService acsToWmsService = SpringContextHolder.getBean(AcsToWmsService.class); DeviceExecuteLogService logServer = SpringContextHolder.getBean(DeviceExecuteLogService.class); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/converor_barcode/ConveyorBarcodeDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/converor_barcode/ConveyorBarcodeDeviceDriver.java index 71d4f4f..316ba46 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/converor_barcode/ConveyorBarcodeDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/converor_barcode/ConveyorBarcodeDeviceDriver.java @@ -120,6 +120,12 @@ public class ConveyorBarcodeDeviceDriver extends AbstractOpcDeviceDriver impleme String material; String last_material; int barcode; + + @Override + public int hashCode() { + return super.hashCode(); + } + int last_barcode; @Override diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/LnshPalletizingManipulatorSiteDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/LnshPalletizingManipulatorSiteDeviceDriver.java index 6ba6cab..53c6074 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/LnshPalletizingManipulatorSiteDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/LnshPalletizingManipulatorSiteDeviceDriver.java @@ -874,7 +874,7 @@ public class LnshPalletizingManipulatorSiteDeviceDriver extends AbstractOpcDevic * @param */ public synchronized boolean apply_take_full_vehicle() { - if(move > 0) { + if(move > 0 && ObjectUtil.isNotEmpty(barcode)) { ApplyTaskRequest request = new ApplyTaskRequest(); request.setDevice_code(this.getDevice_code()); request.setRequest_medthod_code(Thread.currentThread().getStackTrace()[1].getMethodName()); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_station/LnshStationDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_station/LnshStationDeviceDriver.java index 70ddb19..d32d31b 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_station/LnshStationDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_station/LnshStationDeviceDriver.java @@ -155,7 +155,7 @@ public class LnshStationDeviceDriver extends AbstractOpcDeviceDriver implements lucene.deviceItemValue(this.device_code, "mode", String.valueOf(mode)); lucene.deviceExecuteLog(new LuceneLogDto(this.device_code, message + "信号mode:" + last_mode + " -> " + mode)); } - if (move != last_move) { + if (move != last_move && mode>0) { logServer.deviceItemValue(this.device_code, "move", String.valueOf(move)); logServer.deviceExecuteLog(this.device_code, "", "", "信号move:" + last_move + " -> " + move); lucene.deviceItemValue(this.device_code, "move", String.valueOf(move)); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java index 9c5a6f9..12053c2 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java @@ -56,6 +56,7 @@ import org.nl.modules.wql.exception.WDKException; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.WqlUtil; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -78,21 +79,22 @@ import java.util.regex.Pattern; public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { List tasks = new ArrayList(); - - private final DeviceAppService deviceAppService; - - private final RouteLineService routelineserver; + @Autowired + private DeviceAppService deviceAppService; + @Autowired + private RouteLineService routelineserver; @Autowired private AcsToWmsService acstowmsService; @Autowired + @Lazy private TaskFeedbackService taskFeedbackService; + @Autowired + private ParamService acsConfigService; - private final ParamService acsConfigService; - - - private final RouteLineService routeLineService; - - private final DeviceAssignedService deviceAssignedService; + @Autowired + private RouteLineService routeLineService; + @Autowired + private DeviceAssignedService deviceAssignedService; @Autowired private InstructionService instructionService; diff --git a/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/AsyncLuceneAppender.java b/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/AsyncLuceneAppender.java index 8c24db6..5077f33 100644 --- a/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/AsyncLuceneAppender.java +++ b/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/AsyncLuceneAppender.java @@ -7,6 +7,7 @@ package org.nl.modules.lucene.common; */ import ch.qos.logback.classic.spi.ILoggingEvent; +import cn.hutool.core.util.IdUtil; import com.yomahub.tlog.core.context.AspectLogContext; import com.yomahub.tlog.core.enhance.logback.async.AspectLogbackAsyncAppender; import org.apache.commons.lang3.StringUtils; @@ -20,6 +21,14 @@ public class AsyncLuceneAppender extends AspectLogbackAsyncAppender { @Override protected void append(ILoggingEvent event) { String traceId = AspectLogContext.getLogValue(); + if (StringUtils.isEmpty(traceId)){ + traceId = IdUtil.nanoId()+"@"; + AspectLogContext.putLogValue(traceId); + }else { + if (!traceId.contains("@")){ + AspectLogContext.putLogValue(traceId+"@"); + } + } if (StringUtils.isNotEmpty(traceId)){ MDC.put("traceId",traceId); Map mdcPropertyMap = event.getMDCPropertyMap(); diff --git a/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/LuceneAppender.java b/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/LuceneAppender.java index b492362..c3cb0d3 100644 --- a/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/LuceneAppender.java +++ b/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/LuceneAppender.java @@ -59,7 +59,8 @@ public class LuceneAppender extends AppenderBase { protected void append(ILoggingEvent event) { String message = event.getFormattedMessage(); try { - LuceneLogDto luceneLogDto = JSONObject.parseObject(message, LuceneLogDto.class); + String[] split = message.split("@"); + LuceneLogDto luceneLogDto = JSONObject.parseObject(split[1], LuceneLogDto.class); Document document = new Document(); try { //向document对象中添加域。 diff --git a/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/Searcher.java b/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/Searcher.java index b81cb6f..4a37c3a 100644 --- a/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/Searcher.java +++ b/acs/nladmin-system/src/main/java/org/nl/modules/lucene/common/Searcher.java @@ -92,6 +92,7 @@ public class Searcher { Document doc = reader.document(scoreDoc.doc); JSONObject object = new JSONObject(); object.put("content",doc.get("fieldContent")); +// object.put("trace_id",doc.get("trace_id")); object.put("device_code",doc.get("device_code")); object.put("logTime",doc.get("logTime")); object.put("method",doc.get("method")); diff --git a/acs/nladmin-system/src/main/resources/logback-spring.xml b/acs/nladmin-system/src/main/resources/logback-spring.xml index 155cde0..06fa62a 100644 --- a/acs/nladmin-system/src/main/resources/logback-spring.xml +++ b/acs/nladmin-system/src/main/resources/logback-spring.xml @@ -62,7 +62,7 @@ https://juejin.cn/post/6844903775631572999 - + 512 diff --git a/acs/nladmin-ui/src/views/monitor/lucene/index.vue b/acs/nladmin-ui/src/views/monitor/lucene/index.vue index 36be01e..03a3beb 100644 --- a/acs/nladmin-ui/src/views/monitor/lucene/index.vue +++ b/acs/nladmin-ui/src/views/monitor/lucene/index.vue @@ -16,6 +16,7 @@ +