From 3159f8eab436e72c939fdaf0c005339775253265 Mon Sep 17 00:00:00 2001 From: zhangzhiqiang Date: Thu, 23 Mar 2023 17:53:27 +0800 Subject: [PATCH] =?UTF-8?q?add:=E4=BB=BB=E5=8A=A1=E5=AE=9A=E6=97=B6?= =?UTF-8?q?=E4=B8=8B=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/nl/common/enums/AcsTaskEnum.java | 4 +++- .../acs/service/impl/WmsToAcsServiceImpl.java | 14 ++++++++++++ .../nl/wms/sch/tasks/TaskScheduleService.java | 22 +++++-------------- 3 files changed, 23 insertions(+), 17 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java index 37f4509e..cdf036d6 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java @@ -12,9 +12,11 @@ import lombok.Getter; @AllArgsConstructor public enum AcsTaskEnum { UNDEFINED("0","未定义类型"), - //任务类型 + //任务类型:3个点,任务编号,无需载具 PRODUCT_MAC("1","专机-专机任务"), + //3个点,任务编号,缓存线空载具列表 PRODUCT_CACHE("2","专机-缓存线任务"), + //3个点,任务编号,缓存线满料载具列表 CACHELINE_OUT("3","缓存线出库任务"), //回调状态 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java index 7e845074..47812660 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java @@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject; import org.nl.common.anno.Log; import lombok.extern.slf4j.Slf4j; import org.nl.common.utils.AcsUtil; +import org.nl.common.utils.MapOf; import org.nl.wms.ext.acs.service.WmsToAcsService; import org.springframework.stereotype.Service; @@ -17,6 +18,19 @@ import java.util.Map; public class WmsToAcsServiceImpl implements WmsToAcsService { @Override public Map issueTaskToAcs(JSONArray arr) { + JSONArray form = new JSONArray(); + for (Object o : arr) { + JSONObject task = (JSONObject) o; + JSONObject param = new JSONObject(MapOf.of("task_id", task.getString("task_id") + , "task_type", task.getString("task_type") + , "start_point_code", task.getString("point_code1") + , "next_point_code", task.getString("point_code2") + , "return_point_code", task.getString("point_code3") + , "task_group_id", task.getString("task_group_id") + , "vehicle_code", task.getString("vehicle_code") + )); + form.add(param); + } String api = "api/wms/task"; return AcsUtil.notifyAcs(api, arr); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/TaskScheduleService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/TaskScheduleService.java index 5b653ba9..34bb845a 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/TaskScheduleService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/TaskScheduleService.java @@ -56,9 +56,9 @@ public class TaskScheduleService { Map> pointRegionCollent = needMergeCollect.stream().collect(Collectors.groupingBy(o -> ((JSONObject) o).getString("point_code"))); Set mergePointCollent = needMergeCollect.stream().map(item -> ((JSONObject) item).getString("point_code")).collect(Collectors.toSet()); //合并下发的任务 - ArrayList notMerge = new ArrayList<>();//单独下发的任务 - ArrayList Merge = new ArrayList<>();//单独下发的任务 - ArrayList waitingTask = new ArrayList<>();//可合并,但是只有单条任务 + List notMerge = new ArrayList<>();//单独下发的任务 + List Merge = new ArrayList<>();//单独下发的任务 + List waitingTask = new ArrayList<>();//可合并,但是只有单条任务 Map taskGroupMap = new HashMap<>(); for (Object o : array) { String taskGroupId = IdUtil.getStringId(); @@ -88,7 +88,7 @@ public class TaskScheduleService { } //开始下发:处理waitingTask:如果创建时间>2分钟:则改单独下发 if (waitingTask.size()>1){ - List needPublish = waitingTask.stream().filter(a -> a.getString("create_time") == DateUtil.now()).collect(Collectors.toList()); + List needPublish = waitingTask.stream().filter(a -> ((JSONObject)a).getString("create_time") == DateUtil.now()).collect(Collectors.toList()); notMerge.addAll(needPublish); } String notMergeID = notMerge.stream().map(a -> ((JSONObject) a).getString("task_id")).collect(Collectors.joining(",")); @@ -98,18 +98,8 @@ public class TaskScheduleService { //下发任务:一次暂时下发十条:同一个区域任务不超过10条 JSONArray form = new JSONArray(); Merge.addAll(notMerge); - for (JSONObject task : Merge) { - JSONObject param = new JSONObject(MapOf.of("task_id", task.getString("task_id") - , "task_type", task.getString("task_type") - , "start_point_code", task.getString("point_code1") - , "next_point_code", task.getString("point_code2") - , "return_point_code", task.getString("point_code3") - , "task_group_id", task.getString("task_group_id") - , "vehicle_code", task.getString("vehicle_code") - )); - form.add(param); - } - wmsToAcsService.issueTaskToAcs(form); + JSONArray jsonArray = new JSONArray(Merge); + wmsToAcsService.issueTaskToAcs(jsonArray); } } }