From 20aecf5d73a959f12603cae1828660500ca97fc6 Mon Sep 17 00:00:00 2001 From: zhouz <> Date: Wed, 23 Jul 2025 14:22:24 +0800 Subject: [PATCH] =?UTF-8?q?fix:RGV=E4=BB=BB=E5=8A=A1=E4=B8=8B=E5=8F=91?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E4=BB=BB=E5=8A=A1=E6=97=B6=E4=B8=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nl/b_lms/sch/tasks/TwoOutHeapTask.java | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutHeapTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutHeapTask.java index 1d8549ba1..5b9d0ff3f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutHeapTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutHeapTask.java @@ -25,6 +25,7 @@ import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 堆垛机点位至行架点位任务(出库) @@ -113,6 +114,14 @@ public class TwoOutHeapTask extends AbstractAcsTask { List pointJson = wo_Task.query("handle_class = '" + THIS_CLASS + "' AND task_status IN ('05','06') AND is_delete = '0' ORDER BY point_code2") .getResultJSONArray(0).toJavaList(JSONObject.class); + // 下发两个的任务 + List err_list = taskArrAll.stream() + .filter(row -> row.getString("point_code2").equals(IOSEnum.EXCEP_OUT.code("异常出库口"))) + .collect(Collectors.toList()); + if (ObjectUtil.isNotEmpty(err_list)) { + taskArr.addAll(err_list); + } + if (ObjectUtil.isEmpty(pointJson)) { // 下发两个的任务 JSONObject oneJson = taskArrAll.stream() @@ -152,7 +161,7 @@ public class TwoOutHeapTask extends AbstractAcsTask { JSONObject jsonOne = pointTab.query("point_code = '" + IOSEnum.OUT_HANGER.code("行架位2") + "'") .uniqueResult(0); if (jsonOne.getString("is_used").equals("1")) { - twoJsonOne.put("point_code2",IOSEnum.OUT_HANGER.code("行架位2")); + twoJsonOne.put("point_code2", IOSEnum.OUT_HANGER.code("行架位2")); wo_Task.update(twoJsonOne); taskArr.add(twoJsonOne); } @@ -178,7 +187,7 @@ public class TwoOutHeapTask extends AbstractAcsTask { JSONObject jsonTwo = pointTab.query("point_code = '" + IOSEnum.OUT_HANGER.code("行架位1") + "'") .uniqueResult(0); if (jsonTwo.getString("is_used").equals("1")) { - twoJsonTwo.put("point_code2",IOSEnum.OUT_HANGER.code("行架位1")); + twoJsonTwo.put("point_code2", IOSEnum.OUT_HANGER.code("行架位1")); wo_Task.update(twoJsonTwo); taskArr.add(twoJsonTwo); } @@ -206,20 +215,20 @@ public class TwoOutHeapTask extends AbstractAcsTask { JSONObject param = new JSONObject(); param.put("is_delete", "1"); param.put("update_time", DateUtil.now()); - taskTab.update(param,"task_id = '" + task_id+ "'"); + taskTab.update(param, "task_id = '" + task_id + "'"); } if (TaskStatusEnum.EXECUTING.getCode().equals(status)) { JSONObject param = new JSONObject(); param.put("task_status", TaskStatusEnum.EXECUTING.getCode()); param.put("update_time", DateUtil.now()); - taskTab.update(param,"task_id = '" + task_id+ "'"); + taskTab.update(param, "task_id = '" + task_id + "'"); } if (StrUtil.equals(status, TaskStatusEnum.FINISHED.getCode())) { // 更新任务完成 JSONObject param = new JSONObject(); param.put("task_status", TaskStatusEnum.FINISHED.getCode()); param.put("update_time", DateUtil.now()); - taskTab.update(param,"task_id = '" + task_id+ "'"); + taskTab.update(param, "task_id = '" + task_id + "'"); // 如果是异常出库口则不需要下发行架任务 if (jsonTask.getString("point_code2").equals(IOSEnum.EXCEP_OUT.code("异常出库口"))) { WQLObject veExtTab = WQLObject.getWQLObject("md_pb_storagevehicleext"); @@ -300,13 +309,13 @@ public class TwoOutHeapTask extends AbstractAcsTask { } @Transactional - public void sendTaskAcs(String groupTaskId,boolean retry) { + public void sendTaskAcs(String groupTaskId, boolean retry) { WQLObject wo_Task = WQLObject.getWQLObject("sch_base_task"); - List taskArrAll = wo_Task + List taskArrAll = wo_Task .query("handle_class = '" + THIS_CLASS + "' and task_status = '" + TaskStatusEnum.START_AND_POINT.getCode() + "' and is_delete ='0' ORDER BY create_time") .getResultJSONArray(0).toJavaList(JSONObject.class); // 是否下发多个AGV输送出库任务 - if (CollectionUtils.isEmpty(taskArrAll)){ + if (CollectionUtils.isEmpty(taskArrAll)) { return; } List taskArr;