From b6681bc12173c1179d0185805ba461211472ac18 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期日, 04 一月 2026 09:31:16 +0800
Subject: [PATCH] 1.完善出库任务呼叫agv 2.完善agv任务下发 3.等等

---
 src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java |  120 +++++++++++++++++++++++-------------------------------------
 1 files changed, 46 insertions(+), 74 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
index 9e42536..468d906 100644
--- a/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
@@ -239,7 +239,6 @@
             newMemo.put("itemdata", list);
 
 
-
             // 鐢熸垚璁㈠崟
             OrderPakin orderPakin = new OrderPakin();
             orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
@@ -260,8 +259,8 @@
 
                     // 鐢熸垚鏄庣粏
                     Mat mat = matService.selectByMatnr(mesMatInfo.getItemNo());
-                    if(Cools.isEmpty(mat)){
-                        log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�="+mesMatInfo.getItemNo());
+                    if (Cools.isEmpty(mat)) {
+                        log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�=" + mesMatInfo.getItemNo());
                         continue;
                     }
                     OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
@@ -967,6 +966,7 @@
             orderPakout.setUpdateTime(now);
             orderPakout.setMemo(JSONObject.toJSONString(mesCallOutApply));
             orderPakout.setPakinPakoutStatus(2);
+            orderPakout.setCstmrName(mesCallOutApply.getStationId());//agv鐩爣绔欑偣
             if (!orderPakoutService.insert(orderPakout)) {
                 log.error("MES淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
                 throw new CoolException("淇濆瓨鍑哄簱璁㈠崟锛堝彨鏂欙級涓绘。澶辫触");
@@ -1003,9 +1003,9 @@
             }
 
             //鏈夊灏戠涓嶅悓鐨勯厤鐩樺彿   鍙湁閰嶇洏鍑哄簱鍗曢渶瑕佺煡閬�
-            if (mesCallOutApply.getTransType().equals("閰嶇洏鍑哄簱鍗�")){
+            if (mesCallOutApply.getTransType().equals("閰嶇洏鍑哄簱鍗�")) {
                 orderPakout.setPayType(set.size());
-                String shipCode =mesCallOutApply.getItemdata().get(0).getTrayid().split("-")[2];
+                String shipCode = mesCallOutApply.getItemdata().get(0).getTrayid().split("-")[2];
                 orderPakout.setShipCode(shipCode);//鍖哄煙  鏄惁鏄壒娈婃墭鐩�
                 orderPakoutService.updateById(orderPakout);
             }
@@ -1039,11 +1039,11 @@
             orderPakin.setPakinPakoutStatus(1);
             orderPakinService.insert(orderPakin);
             if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
-                for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()){
+                for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()) {
                     // 鐢熸垚鏄庣粏
                     Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
-                    if(Cools.isEmpty(mat)){
-                        log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�="+mesOutApplyItem.getItemno());
+                    if (Cools.isEmpty(mat)) {
+                        log.error("璇ョ墿鏂欑紪鍙风珛搴撴病鏈�=" + mesOutApplyItem.getItemno());
                         continue;
                     }
                     OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
@@ -1104,73 +1104,37 @@
             return result;
         }
 
-        // 涓嬪彂缁橰CS
-        RcsTaskSubmit rcsTaskSubmit = new RcsTaskSubmit();
-        rcsTaskSubmit.setRobotTaskCode(transTask.getTaskno());
-        rcsTaskSubmit.setInitPriority(10);  //榛樿10
-        List<RcsTaskTargetRoute> targetRouteList = new ArrayList<>();
-        RcsTaskTargetRoute startRoute = new RcsTaskTargetRoute();
-        startRoute.setSeq(0);
-        startRoute.setCode(transTask.getCurStationId());
-        startRoute.setOperation("COLLECT");
-        targetRouteList.add(startRoute);
-        RcsTaskTargetRoute endRoute = new RcsTaskTargetRoute();
-        endRoute.setSeq(1);
-        endRoute.setCode(transTask.getNextStationId());
-        endRoute.setOperation("DELIVERY");
-        targetRouteList.add(endRoute);
-        rcsTaskSubmit.setTargetRoute(targetRouteList);
+        int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
+        Date now = new Date();
+        Task task = new Task();
+        task.setWrkNo(workNo);
+        task.setTaskType("ZX-AGV");
+        task.setWrkSts(301L);//301.AGV浠诲姟鍒涘缓
+        task.setIoType(3);//3.绔欏埌绔�
+        task.setIoPri(10.00);
+        task.setWrkDate(now);
+        task.setBarcode(transTask.getBarcode());
+        task.setSourceStaNo(transTask.getCurStationId());
+        task.setStaNo(transTask.getNextStationId());
+        task.setBarcode(transTask.getTuoPanId());
+        task.setModiUser(defaultUserId);
+        task.setModiTime(now);
+        task.setAppeUser(defaultUserId);
+        task.setAppeTime(now);
+        task.setTaskNo(transTask.getTaskno());
+        task.setMemo(JSONObject.toJSONString(transTask));
+        task.setPltType(transTask.getAgvFactory());//鍗庢檽AGV
+        task.setPacked(transTask.getRackNumber());//鏂欐灦鍙�
+        task.setCtnType(1);
 
-        // 杞彂缁欐捣搴锋垨鍗庢檽RCS
-        int success = rcsService.submitTask(rcsTaskSubmit, transTask.getAgvFactory());
-        if (success == 1) {
-            int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
-            Date now = new Date();
-            Task task = new Task();
-            task.setWrkNo(workNo);
-            task.setTaskType("ZX-AGV");
-            task.setWrkSts(302L);//302.AGV浠诲姟鎵ц涓�
-            task.setIoType(3);//3.绔欏埌绔�
-            task.setIoPri(10.00);
-            task.setWrkDate(now);
-            task.setBarcode(transTask.getBarcode());
-            task.setSourceStaNo(transTask.getCurStationId());
-            task.setStaNo(transTask.getNextStationId());
-            task.setBarcode(transTask.getTuoPanId());
-            task.setModiUser(defaultUserId);
-            task.setModiTime(now);
-            task.setAppeUser(defaultUserId);
-            task.setAppeTime(now);
-            task.setTaskNo(transTask.getTaskno());
-            task.setMemo(JSONObject.toJSONString(transTask));
-            task.setPltType(transTask.getAgvFactory());//鍗庢檽AGV
-            task.setPacked(transTask.getRackNumber());//鏂欐灦鍙�
-
-            taskService.insert(task);
-//            Mat mat = matService.selectByMatnr(transTask.getItemno());
-//            TaskDetl taskDetl = new TaskDetl();
-//            taskDetl.setWrkNo(task.getWrkNo());
-//            taskDetl.setIoTime(task.getIoTime());
-//            taskDetl.setMatnr(transTask.getItemno());
-//            taskDetl.setAnfme(0.0);
-//            taskDetl.setStandby1(String.valueOf(transTask.getQty()));
-//            taskDetl.setMaktx(mat.getMaktx());
-//            taskDetl.setSpecs(mat.getSpecs());
-//            taskDetl.setOrderNo(transTask.getOrderNo());
-//            taskDetl.setZpallet(transTask.getTuoPanId());
-//            taskDetl.setMemo(JSONObject.toJSONString(transTask.getItemBarcode()));
-//            taskDetl.setModiUser(defaultUserId);
-//            taskDetl.setModiTime(now);
-//            taskDetl.setAppeUser(defaultUserId);
-//            taskDetl.setAppeTime(now);
-//            taskDetlService.insert(taskDetl);
+        if (taskService.insert(task)) {
             result.put("Success", "1");
             result.put("Message", "浠诲姟鎺ユ敹鎴愬姛");
-        } else {
+
+        }else {
             result.put("Success", "2");
             result.put("Message", "浠诲姟涓嬪彂缁橰CS澶辫触");
         }
-
         return result;
     }
 
@@ -1266,13 +1230,17 @@
         mesReturn.setSuccess("2");
 
         if ("Y".equals(allow.getStatus())) {
-            Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", allow.getTaskno()));
+            String TaskNo = allow.getTaskno();
+            if(allow.getTaskno().contains("-")){
+                TaskNo = allow.getTaskno().split("-")[0];
+            }
+            Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", TaskNo));
             if (Cools.isEmpty(task)) {
                 mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + allow.getTaskno() + "鐨凙GV绉诲姩浠诲姟");
             } else {
                 //鏌ョ湅鐢宠绔欑偣鐨勬槸娴峰悍杩樻槸鍗庢檽
                 //娴峰悍
-                if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1) {
+                if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1 || task.getPltType() == 0) {
                     RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
                     rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
                     rcsTaskContinue.setTriggerType("TASK");
@@ -1354,13 +1322,17 @@
         mesReturn.setSuccess("2");
 
         if ("Y".equals(allow.getStatus())) {
-            Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", allow.getTaskno()));
+            String TaskNo = allow.getTaskno();
+            if(allow.getTaskno().contains("-")){
+                TaskNo = allow.getTaskno().split("-")[0];
+            }
+            Task task = taskService.selectOne(new EntityWrapper<Task>().eq("task_no", TaskNo));
             if (Cools.isEmpty(task)) {
-                mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + allow.getTaskno() + "鐨凙GV绉诲姩浠诲姟");
+                mesReturn.setMessage("娌℃湁鎵句釜璇ヤ换鍔$紪鍙�=" + TaskNo + "鐨凙GV绉诲姩浠诲姟");
             } else {
                 //鏌ョ湅鐢宠绔欑偣鐨勬槸娴峰悍杩樻槸鍗庢檽
                 //娴峰悍
-                if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1) {
+                if (Cools.isEmpty(task.getPltType()) || task.getPltType() == 1 || task.getPltType() == 0) {
                     RcsTaskContinue rcsTaskContinue = new RcsTaskContinue();
                     rcsTaskContinue.setRobotTaskCode(allow.getTaskno());
                     rcsTaskContinue.setTriggerType("TASK");

--
Gitblit v1.9.1