From 22944ce7eaa39056c182e19ac9bfb5f1e1a30dfe Mon Sep 17 00:00:00 2001 From: lishuai <1793460677@qq.com> Date: Thu, 11 Jul 2024 08:42:17 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A0=86=E5=8F=A0=E8=A1=8C=E6=9E=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=81=E6=97=A5=E5=BF=97=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E3=80=81=E5=AE=9A=E6=97=B6=E5=99=A8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/nl/acs/agv/QueryAGVStatus.java | 8 +- .../server/impl/XianGongAgvServiceImpl.java | 19 +- ...pedManipulatorManipulatorDeviceDriver.java | 257 +++++++++--------- .../service/InstructionService.java | 2 + .../service/impl/InstructionServiceImpl.java | 11 + .../task/service/impl/TaskServiceImpl.java | 14 +- .../quartz/task/AutoCleanLucenceLog.java | 1 - 7 files changed, 166 insertions(+), 146 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/QueryAGVStatus.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/QueryAGVStatus.java index e7ab768c7..4ee62576e 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/QueryAGVStatus.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/QueryAGVStatus.java @@ -86,9 +86,11 @@ public class QueryAGVStatus { if (StrUtil.isNotEmpty(instructionCode)){ Device carCode = deviceAppService.findDeviceByCode(instructionCode); XgAgvCarDeviceDriver xgAgvCarDeviceDriver; - if (carCode.getDeviceDriver() instanceof XgAgvCarDeviceDriver){ - xgAgvCarDeviceDriver = (XgAgvCarDeviceDriver) carCode.getDeviceDriver(); - xgAgvCarDeviceDriver.setTaskType(AgvActionTypeEnum.getStatus(instruction.getAgv_action_type())); + if (null != carCode) { + if (carCode.getDeviceDriver() instanceof XgAgvCarDeviceDriver) { + xgAgvCarDeviceDriver = (XgAgvCarDeviceDriver) carCode.getDeviceDriver(); + xgAgvCarDeviceDriver.setTaskType(AgvActionTypeEnum.getStatus(instruction.getAgv_action_type())); + } } } diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java index 415bd79ea..2651804b9 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java @@ -796,15 +796,16 @@ public class XianGongAgvServiceImpl implements XianGongAgvService { //放货前二次分配 if (address.contains("WAIT")) { String newPointCode = applyCCAgvTask(task_code, instructionDto); - LuceneLogDto logDto = LuceneLogDto.builder() - .content("叉车允许放货" + "新点位:" + newPointCode) - .build(); - logDto.setLog_level(4); - luceneExecuteLogService.deviceExecuteLog(logDto); + JSONObject map = new JSONObject(); map.put("status", 200); map.put("message", "允许叉车放货!" + "点位" + newPointCode); log.info("允许仙工AGV放货,设备号 - {}", newPointCode); + LuceneLogDto logDto = LuceneLogDto.builder() + .content("叉车允许放货" + "新点位:" + newPointCode + map ) + .build(); + logDto.setLog_level(4); + luceneExecuteLogService.deviceExecuteLog(logDto); return map; } //放货前等待 @@ -859,6 +860,8 @@ public class XianGongAgvServiceImpl implements XianGongAgvService { .build(); logDto2.setLog_level(4); luceneExecuteLogService.deviceExecuteLog(logDto2); + //二次分配更新点位 + updataTask(instructionDto, jo.getString("data")); //请求成功调用叉车追加动作块 sendAddSequencesToCCAgv(instructionDto.getInstruction_code(), jo.getString("data"), instructionDto); return jo.getString("data"); @@ -882,7 +885,7 @@ public class XianGongAgvServiceImpl implements XianGongAgvService { //追加订单封口 jo.put("complete", true); LuceneLogDto logDto = LuceneLogDto.builder() - .device_code("追加叉车运单") + .device_code(instructionDto.getCarno()) .content("指令号:" + instructionCode + ",追加叉车运单参数:" + jo) .build(); logDto.setLog_level(4); @@ -903,8 +906,8 @@ public class XianGongAgvServiceImpl implements XianGongAgvService { .timeout(20000) .execute(); LuceneLogDto logDto1 = LuceneLogDto.builder() - .device_code("叉车追加运单响应") - .content("指令号:" + instructionCode + ",下发追加诺宝叉车运单反馈参数:" + jo) + .device_code(instructionDto.getCarno()) + .content("指令号:" + instructionCode + ",下发追加诺宝叉车运单反馈参数:" + result) .build(); logDto1.setLog_level(4); luceneExecuteLogService.deviceExecuteLog(logDto1); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java index 1956493ce..c43eb1975 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java @@ -168,7 +168,7 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice } // 更新指令状态 if (mode == 3 && task > 0) { - if (null!=inst) { + if (null != inst) { inst_message = "指令号:" + inst.getInstruction_code() + " " + inst.getStart_point_code() + "->" + inst.getNext_point_code(); } updateInstructionStatus(); @@ -261,10 +261,10 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice } //放货完成 - if ( action == 4 && move == 0) { + if (action == 4 && move == 0) { if (inst != null) { try { - logServer.deviceExecuteLog(this.device_code,"","","放货完成"); + logServer.deviceExecuteLog(this.device_code, "", "", "放货完成"); finish_instruction(inst); Map map1 = new HashMap<>(); List list = new ArrayList(); @@ -278,19 +278,19 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice e.printStackTrace(); } feedMessage = ""; - }else { + } else { feedMessage = "universal_feedMessage5"; if (mode != 3) { - feedMessage = "universal_feedMessage1"; + feedMessage = "universal_feedMessage1"; } if (action != 8) { - feedMessage = "universal_feedMessage2"; + feedMessage = "universal_feedMessage2"; } if (move != 0) { - feedMessage = "universal_feedMessage3"; + feedMessage = "universal_feedMessage3"; } if (task == 0) { - feedMessage = "universal_feedMessage4"; + feedMessage = "universal_feedMessage4"; } } } @@ -312,20 +312,27 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice if (ObjectUtil.isEmpty(putDeviceCodeList)) { putDeviceCodeList = this.getExtraDeviceCodes("put_device_code"); } - //找终点为入库输送线工位任务类型为行架的任务 - for (int i = 0; i < getDeviceCodeList.size(); i++) { - String startDeviceCode = getDeviceCodeList.get(i); - //先查指令 - List taskDtoInstruction = taskserver.queryTaskByDeviceCodeAndStatus2(startDeviceCode); - List taskDtoStream = taskDtoInstruction.stream().sorted(Comparator.comparing(TaskDto::getCreate_time)).collect(Collectors.toList()); - if (CollUtil.isNotEmpty(taskDtoStream)) { - TaskDto taskDtoIns = taskDtoStream.get(0); - if (TaskTypeEnum.Truss_Task.getIndex().equals(taskDtoIns.getTask_type())) { - Instruction instruction = instructionService.findByTaskcodeAndStatus(taskDtoIns.getTask_code()); - String interactionJson = taskDtoIns.getInteraction_json(); + //先查指令 + List instructionList = instructionService.findReadyIns(); + if (CollUtil.isNotEmpty(instructionList)) { + List instructionsReady = new ArrayList<>(); + Instruction instructionReady = null; + for (Instruction instruction : instructionList) { + if (getDeviceCodeList.contains(instruction.getStart_device_code())) { + instructionsReady.add(instruction); + } + } + if (CollUtil.isNotEmpty(instructionsReady)) { + List instructions = instructionsReady.stream().sorted(Comparator.comparing(Instruction::getCreate_time)).collect(Collectors.toList()); + instructionReady = instructions.get(0); + } + if (ObjectUtil.isNotEmpty(instructionReady)) { + TaskDto byTaskCode = taskserver.findByTaskCode(instructionReady.getTask_code()); + String interactionJson = byTaskCode.getInteraction_json(); + if (StrUtil.isNotEmpty(interactionJson)) { InteractionJsonDTO interactionJsonDTO = JSON.parseObject(interactionJson, InteractionJsonDTO.class); - String start_device_code = taskDtoIns.getStart_device_code(); - String next_device_code = taskDtoIns.getNext_device_code(); + String start_device_code = byTaskCode.getStart_device_code(); + String next_device_code = byTaskCode.getNext_device_code(); Device startDevice = deviceAppService.findDeviceByCode(start_device_code); Device nextDevice = deviceAppService.findDeviceByCode(next_device_code); String start_addr = startDevice.getExtraValue().get("address").toString(); @@ -350,108 +357,108 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice Map map10 = new HashMap<>(); Map map11 = new HashMap<>(); try { - pushPLC(map1, map2, next_addr, map3, start_addr, map4, instruction.getInstruction_code(), interactionJsonDTO, map5, map6, map7, map8, map9,map10,map11,instruction.getVehicle_code()); + pushPLC(map1, map2, next_addr, map3, start_addr, map4, instructionReady.getInstruction_code(), interactionJsonDTO, map5, map6, map7, map8, map9, map10, map11, instructionReady.getVehicle_code()); } catch (Exception e) { logServer.deviceExecuteLog(device_code, "", "", "当前设备:" + device_code + ",下发指令:" - + instruction.getInstruction_code() + ",指令起点:" + instruction.getStart_device_code() - + ",指令终点:" + instruction.getNext_device_code() + ",交互参数:" + interactionJsonDTO.toString() + ",指令执行失败:" + e.getMessage()); + + instructionReady.getInstruction_code() + ",指令起点:" + instructionReady.getStart_device_code() + + ",指令终点:" + instructionReady.getNext_device_code() + ",交互参数:" + interactionJsonDTO.toString() + ",指令执行失败:" + e.getMessage()); } this.setRequireSucess(true); return true; } - } else { - List taskDtos = taskserver.findByTrappedManipulatorReady(); - List taskDtosReady = new ArrayList<>(); - TaskDto taskDto = null; - if (CollUtil.isNotEmpty(taskDtos)) { - for (TaskDto taskDto1 : taskDtos) { - if (getDeviceCodeList.contains(taskDto1.getStart_device_code())) { - taskDtosReady.add(taskDto1); - } + } + } else { + List taskDtos = taskserver.findByTrappedManipulatorReady(); + List taskDtosReady = new ArrayList<>(); + TaskDto taskDto = null; + if (CollUtil.isNotEmpty(taskDtos)) { + for (TaskDto taskDto1 : taskDtos) { + if (getDeviceCodeList.contains(taskDto1.getStart_device_code())) { + taskDtosReady.add(taskDto1); } } - if (CollUtil.isNotEmpty(taskDtosReady)) { - List taskDtoList = taskDtosReady.stream().sorted(Comparator.comparing(TaskDto::getCreate_time)).collect(Collectors.toList()); - taskDto = taskDtoList.get(0); + } + if (CollUtil.isNotEmpty(taskDtosReady)) { + List taskDtoList = taskDtosReady.stream().sorted(Comparator.comparing(TaskDto::getCreate_time)).collect(Collectors.toList()); + taskDto = taskDtoList.get(0); + } + if (ObjectUtil.isNotEmpty(taskDto)) { + String interactionJson = taskDto.getInteraction_json(); + InteractionJsonDTO interactionJsonDTO = JSON.parseObject(interactionJson, InteractionJsonDTO.class); + String start_device_code = taskDto.getStart_device_code(); + String next_device_code = taskDto.getNext_device_code(); + Device startDevice = deviceAppService.findDeviceByCode(start_device_code); + Device nextDevice = deviceAppService.findDeviceByCode(next_device_code); + String start_addr = startDevice.getExtraValue().get("address").toString(); + String next_addr = nextDevice.getExtraValue().get("address").toString(); + if (ObjectUtil.isEmpty(start_addr)) { + notCreateInstMessage = "universal_notCreateInstMessage1"; + throw new BadRequestException("设备:" + startDevice.getDevice_code() + "未设置电气调度号!"); + } + if (ObjectUtil.isEmpty(next_addr)) { + notCreateInstMessage = "universal_notCreateInstMessage1"; + throw new BadRequestException("设备:" + nextDevice.getDevice_code() + "未设置电气调度号!"); } - if (ObjectUtil.isNotEmpty(taskDto)) { - String interactionJson = taskDto.getInteraction_json(); - InteractionJsonDTO interactionJsonDTO = JSON.parseObject(interactionJson, InteractionJsonDTO.class); - String start_device_code = taskDto.getStart_device_code(); - String next_device_code = taskDto.getNext_device_code(); - Device startDevice = deviceAppService.findDeviceByCode(start_device_code); - Device nextDevice = deviceAppService.findDeviceByCode(next_device_code); - String start_addr = startDevice.getExtraValue().get("address").toString(); - String next_addr = nextDevice.getExtraValue().get("address").toString(); - if (ObjectUtil.isEmpty(start_addr)) { - notCreateInstMessage = "universal_notCreateInstMessage1"; - throw new BadRequestException("设备:" + startDevice.getDevice_code() + "未设置电气调度号!"); - } - if (ObjectUtil.isEmpty(next_addr)) { - notCreateInstMessage = "universal_notCreateInstMessage1"; - throw new BadRequestException("设备:" + nextDevice.getDevice_code() + "未设置电气调度号!"); - } - BeltConveyorDeviceDriver beltConveyorDeviceDriver; - if (startDevice.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { - beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) startDevice.getDeviceDriver(); - if (beltConveyorDeviceDriver.getMove() != 1&&beltConveyorDeviceDriver.getMode() != 2) { - notCreateInstMessage = "universal_notCreateInstMessage2"; - return false; - } - } - - String taskid = taskDto.getTask_id(); - String taskcode = taskDto.getTask_code(); - String start_point_code = taskDto.getStart_point_code(); - String route_plan_code = taskDto.getRoute_plan_code(); - String next_point_code = taskDto.getNext_point_code(); - Instruction instdto = new Instruction(); - packageData(instdto, route_plan_code, taskid, taskcode, start_device_code, next_device_code, start_point_code, next_point_code); - - try { - instructionService.create(instdto); - } catch (Exception e) { - LuceneLogDto logDto = LuceneLogDto.builder() - .device_code(device_code) - .content(device_code+"创建指令时出现异常:" + e.getMessage()) - .build(); - logDto.setLog_level(2); - luceneExecuteLogService.deviceExecuteLog(logDto); + BeltConveyorDeviceDriver beltConveyorDeviceDriver; + if (startDevice.getDeviceDriver() instanceof BeltConveyorDeviceDriver) { + beltConveyorDeviceDriver = (BeltConveyorDeviceDriver) startDevice.getDeviceDriver(); + if (beltConveyorDeviceDriver.getMove() != 1 && beltConveyorDeviceDriver.getMode() != 2) { + notCreateInstMessage = "universal_notCreateInstMessage2"; return false; } - //创建指令后修改任务状态 - taskDto.setTask_status(TaskStatusEnum.BUSY.getIndex()); - taskserver.update(taskDto); - requireSucess = true; - - Map map1 = new HashMap<>(); - Map map2 = new HashMap<>(); - Map map3 = new HashMap<>(); - Map map4 = new HashMap<>(); - Map map5 = new HashMap<>(); - Map map6 = new HashMap<>(); - Map map7 = new HashMap<>(); - Map map8 = new HashMap<>(); - Map map9 = new HashMap<>(); - Map map10 = new HashMap<>(); - Map map11 = new HashMap<>(); - try { - pushPLC(map1, map2, next_addr, map3, start_addr, map4, instdto.getInstruction_code(), interactionJsonDTO, map5, map6, map7, map8, map9,map10, map11, taskDto.getVehicle_code()); - } catch (Exception e) { - LuceneLogDto logDto = LuceneLogDto.builder() - .device_code(device_code) - .content(device_code+"创建指令时出现异常:" + e.getMessage()) - .build(); - logDto.setLog_level(2); - luceneExecuteLogService.deviceExecuteLog(logDto); - } - this.setRequireSucess(true); - return true; - } else { - notCreateInstMessage = "universal_notCreateInstMessage"; } + + String taskid = taskDto.getTask_id(); + String taskcode = taskDto.getTask_code(); + String start_point_code = taskDto.getStart_point_code(); + String route_plan_code = taskDto.getRoute_plan_code(); + String next_point_code = taskDto.getNext_point_code(); + Instruction instdto = new Instruction(); + packageData(instdto, route_plan_code, taskid, taskcode, start_device_code, next_device_code, start_point_code, next_point_code); + + try { + instructionService.create(instdto); + } catch (Exception e) { + LuceneLogDto logDto = LuceneLogDto.builder() + .device_code(device_code) + .content(device_code + "创建指令时出现异常:" + e.getMessage()) + .build(); + logDto.setLog_level(2); + luceneExecuteLogService.deviceExecuteLog(logDto); + return false; + } + //创建指令后修改任务状态 + taskDto.setTask_status(TaskStatusEnum.BUSY.getIndex()); + taskserver.update(taskDto); + requireSucess = true; + + Map map1 = new HashMap<>(); + Map map2 = new HashMap<>(); + Map map3 = new HashMap<>(); + Map map4 = new HashMap<>(); + Map map5 = new HashMap<>(); + Map map6 = new HashMap<>(); + Map map7 = new HashMap<>(); + Map map8 = new HashMap<>(); + Map map9 = new HashMap<>(); + Map map10 = new HashMap<>(); + Map map11 = new HashMap<>(); + try { + pushPLC(map1, map2, next_addr, map3, start_addr, map4, instdto.getInstruction_code(), interactionJsonDTO, map5, map6, map7, map8, map9, map10, map11, taskDto.getVehicle_code()); + } catch (Exception e) { + LuceneLogDto logDto = LuceneLogDto.builder() + .device_code(device_code) + .content(device_code + "创建指令时出现异常:" + e.getMessage()) + .build(); + logDto.setLog_level(2); + luceneExecuteLogService.deviceExecuteLog(logDto); + } + this.setRequireSucess(true); + return true; + } else { + notCreateInstMessage = "universal_notCreateInstMessage"; } } return true; @@ -459,7 +466,6 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice } - private void pushPLC(Map map1, Map map2, String next_addr, Map map3, String start_addr, Map map4, String task, InteractionJsonDTO interactionJsonDTO, Map map5, Map map6, Map map7, Map map8, Map map9, Map map10, Map map11, String vehicleCode) { List list = new ArrayList(); @@ -511,7 +517,7 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice map11.put("value", vehicleCode); list.add(map11); } - Map map12 = new HashMap<>(); + Map map12 = new HashMap<>(); if (ObjectUtil.isNotEmpty(interactionJsonDTO.getBindingTimes())) { map12.put("code", "to_binding_times"); map12.put("value", interactionJsonDTO.getBindingTimes()); @@ -522,22 +528,23 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice this.writing(list); } - private void packageData(Instruction instdto, String route_plan_code, String taskid, String taskcode, String start_device_code, String next_device_code, String start_point_code, String next_point_code) { - instdto.setInstruction_id(IdUtil.simpleUUID()); - instdto.setRoute_plan_code(route_plan_code); - instdto.setTask_id(taskid); - instdto.setTask_code(taskcode); - instdto.setCreate_by(SecurityUtils.getCurrentNickName()); - instdto.setStart_device_code(start_device_code); - instdto.setNext_device_code(next_device_code); - instdto.setStart_point_code(start_point_code); - instdto.setNext_point_code(next_point_code); - instdto.setInstruction_status("0"); - instdto.setExecute_device_code(device_code); - } + private void packageData(Instruction instdto, String route_plan_code, String taskid, String taskcode, String start_device_code, String next_device_code, String start_point_code, String next_point_code) { + instdto.setInstruction_id(IdUtil.simpleUUID()); + instdto.setRoute_plan_code(route_plan_code); + instdto.setTask_id(taskid); + instdto.setTask_code(taskcode); + instdto.setCreate_by(SecurityUtils.getCurrentNickName()); + instdto.setStart_device_code(start_device_code); + instdto.setNext_device_code(next_device_code); + instdto.setStart_point_code(start_point_code); + instdto.setNext_point_code(next_point_code); + instdto.setInstruction_status("0"); + instdto.setExecute_device_code(device_code); + } /** * 完成指令 + * * @param inst * @return * @throws Exception @@ -549,6 +556,7 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice /** * 下发信号 + * * @param list */ public void writing(List list) { @@ -591,6 +599,7 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice public String getToParam() { return this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code() + "."; } + @Override public JSONObject getDeviceStatusName() { JSONObject jo = new JSONObject(); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/InstructionService.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/InstructionService.java index a26f11e73..e7d89ad47 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/InstructionService.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/InstructionService.java @@ -493,4 +493,6 @@ public interface InstructionService extends CommonService { List findByNextCode(String nextDeviceCode); + + List findReadyIns(); } diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java index d5f91606d..65f143594 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java @@ -54,6 +54,7 @@ import org.nl.acs.task.TaskInstructionLock; import org.nl.acs.task.domain.Task; import org.nl.acs.task.enums.AgvSystemTypeEnum; import org.nl.acs.task.enums.TaskStatusEnum; +import org.nl.acs.task.enums.TaskTypeEnum; import org.nl.acs.task.service.TaskService; import org.nl.acs.task.service.dto.TaskDto; import org.nl.acs.common.base.PageInfo; @@ -1945,6 +1946,16 @@ public class InstructionServiceImpl extends CommonServiceImpl findReadyIns() { + + //根据时间升序取第一个 + List instructionsList = instructions.stream() + .filter(item -> StrUtil.equals(item.getInstruction_type(), TaskTypeEnum.Truss_Task.getIndex()) + && StrUtil.equals(item.getInstruction_status(), TaskStatusEnum.READY.getIndex())).collect(Collectors.toList()); + return instructionsList; + } + private boolean regional(String start_device_code, String next_device_code) { Device startdevice = deviceAppService.findDeviceByCode(start_device_code); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java index ae8024ecc..fd7a48ad5 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java @@ -236,7 +236,7 @@ public class TaskServiceImpl extends CommonServiceImpl impleme } @Override - public Map queryAll(Map whereJson, Pageable page) { + public Map queryAll( Map whereJson, Pageable page) { String task_code = (String) whereJson.get("task_code"); String vehicle_code = (String) whereJson.get("vehicle_code"); @@ -806,14 +806,8 @@ public class TaskServiceImpl extends CommonServiceImpl impleme this.addTaskToCache(dto); //反馈上位系统任务状态 - CompletableFuture.runAsync(() -> { - // 异步更新指令状态 - try { - this.feedWmsTaskStatus(entity); - } catch (Exception e) { - e.printStackTrace(); - } - }); + this.feedWmsTaskStatus(entity); + } @Override @@ -1641,9 +1635,9 @@ public class TaskServiceImpl extends CommonServiceImpl impleme //TODO 有需要根据上位系统反馈的信息再做进一步处理 CompletableFuture.runAsync(() -> { + acstowmsService.feedTaskStatus(ja); // 异步更新指令状态 try { - acstowmsService.feedTaskStatus(ja); } catch (Exception e) { e.printStackTrace(); } diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCleanLucenceLog.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCleanLucenceLog.java index 329254267..031848dec 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCleanLucenceLog.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCleanLucenceLog.java @@ -52,6 +52,5 @@ public class AutoCleanLucenceLog { TermRangeQuery termRangeQuery = new TermRangeQuery("logTime", new BytesRef(startDate), new BytesRef(endDate), true, true); writer.deleteDocuments(termRangeQuery); writer.commit(); - writer.close(); } }