From 6deef91299e7216963bd4e00766c92ee6f8956d0 Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期二, 01 四月 2025 13:54:17 +0800
Subject: [PATCH] 给堆垛机下任务

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  101 ++++++++++++++++++++------------------------------
 1 files changed, 40 insertions(+), 61 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 3911ecc..6d68728 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -239,7 +239,9 @@
                                                 JSONObject jsonObject1 = JSON.parseObject(response);
                                                 Boolean bool = false;
                                                 if(jsonObject1.get("ReturnStatus").equals(0)){
+                                                    taskWrk.setStatus(2);//娲惧彂浠诲姟
                                                     bool = true;
+                                                    taskWrkService.updateById(taskWrk);
                                                 }
                                                 apiLogService.save("wcs寮�濮嬪叆搴撲换鍔′笂鎶ms"
                                                         , wmsUrl + TaskExecCallback
@@ -720,6 +722,7 @@
                     continue;
                 }
 
+
                 // 鑾峰彇宸ヤ綔鐘舵�佷负2锛堣澶囦笂璧帮級鐨勫叆搴撳伐浣滄。
                 TaskWrk taskWrk = taskWrkMapper.selectPakIn(slave.getId(), staProtocol.getWorkNo().intValue(), staDesc.getStnNo().toString());
                 if (null == taskWrk) {
@@ -738,7 +741,7 @@
 
 //                int workNo = commonService.getWorkNo(WorkNoType.PAKIN.type);//鑾峰彇鍏ュ簱宸ヤ綔鍙�
 //                taskWrk.setWrkNo(workNo);//宸ヤ綔鍙�
-                taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//娲惧彂鐘舵��
+//                taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//娲惧彂鐘舵��
                 taskWrk.setAssignTime(new Date());//娲惧彂鏃堕棿
                 taskWrk.setWrkSts(3);//宸ヤ綔鐘舵�� 3.鍚婅溅鍏ュ簱
                 taskWrk.setCrnNo(staDesc.getCrnNo());//鍫嗗灈鏈哄彿
@@ -863,36 +866,6 @@
                         command.setDestinationPosZ(crnStn.getLev().shortValue());     // 鐩爣搴撲綅灞�
                         command.setCommand((short) 1);
 
-                        if(Cools.isEmpty(taskWrk.getMarkStart())||taskWrk.getMarkStart()==0){
-                            HashMap<String, Object> hashMap = new HashMap<>();
-                            hashMap.put("TaskNo",taskWrk.getTaskNo());
-                            String response = "";
-                            try {
-                                //寮�濮嬩笂鎶�,鍑哄簱浠诲姟寮�濮嬫椂锛學CS鍥炶皟WMS
-                                response = new HttpHandler.Builder()
-                                        .setUri(wmsUrl)
-                                        .setPath(taskStatusFeedbackPath)
-                                        .setJson(JSON.toJSONString(hashMap))
-                                        .build()
-                                        .doPost();
-                                JSONObject jsonObject = JSON.parseObject(response);
-                                Boolean bool = false;
-                                if(jsonObject.get("ReturnStatus").equals(0)){
-                                    bool = true;
-                                    taskWrk.setMarkStart(1);
-                                }
-                                apiLogService.save("wcs寮�濮嬩换鍔′笂鎶ms"
-                                        , wmsUrl + TaskExecCallback
-                                        , null
-                                        , "127.0.0.1"
-                                        , JSON.toJSONString(hashMap)
-                                        , response
-                                        , bool
-                                );
-                            } catch (Exception e) {
-                            }
-                        }
-
                         if (!CommandUtils.offer(SlaveType.Crn, taskWrk.getCrnNo(), new Task(2, command), false)) {
                             log.error("鍫嗗灈鏈哄懡浠ょ敓鎴愬け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", taskWrk.getCrnNo(), JSON.toJSON(command));
                             throw new CoolException("鍫嗗灈鏈哄懡浠ょ敓鎴愬け璐�");
@@ -901,7 +874,6 @@
                                 // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓�
                                 Date now = new Date();
                                 taskWrk.setWrkSts(12);
-                                taskWrk.setStatus(2);
                                 taskWrk.setModiTime(now);
                                 if (taskWrkMapper.updateById(taskWrk) == 0) {
                                     log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", taskWrk.getWrkNo());
@@ -1006,15 +978,15 @@
                     // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓�
                     Date now = new Date();
                     taskWrk.setWrkSts(12);
-                    taskWrk.setStatus(2);
                     taskWrk.setModiTime(now);
                     if (taskWrkMapper.updateById(taskWrk) == 0) {
                         log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", taskWrk.getWrkNo());
                     }
+                    String response = "";
+                    Boolean bool=false;
+                    HashMap<String, Object> headParam = new HashMap<>();
+                    headParam.put("TaskNo", taskWrk.getTaskNo());
                     try {
-                        HashMap<String, Object> headParam = new HashMap<>();
-                        headParam.put("TaskNo", taskWrk.getTaskNo());
-                        String response;
                         response = new HttpHandler.Builder()
                                 // .setHeaders(headParam)
                                 .setUri(wmsUrl)
@@ -1023,17 +995,24 @@
                                 .build()
                                 .doPost();
                         JSONObject jsonObject = JSON.parseObject(response);
+                        if(jsonObject.get("ReturnStatus").equals(0)){
+                            bool = true;
+                            taskWrk.setStatus(2);
+                            taskWrkMapper.updateById(taskWrk);
+                        }
+
+                    } catch (Exception e) {
+                        log.error("wcs娲惧彂绉诲簱搴撲换鍔′笂鎶ms澶辫触", taskWrk);
+//                        throw new CoolException("wcs娲惧彂绉诲簱搴撲换鍔′笂鎶ms澶辫触");
+                    }finally {
                         apiLogService.save("wcs娲惧彂绉诲簱浠诲姟涓婃姤wms"
                                 , wmsUrl + taskStatusFeedbackPath
                                 , null
                                 , "127.0.0.1"
                                 , JSON.toJSONString(headParam)
                                 , response
-                                , true
+                                , bool
                         );
-                    } catch (Exception e) {
-                        log.error("wcs娲惧彂绉诲簱搴撲换鍔′笂鎶ms澶辫触", taskWrk);
-//                        throw new CoolException("wcs娲惧彂绉诲簱搴撲换鍔′笂鎶ms澶辫触");
                     }
 
                 }
@@ -1283,26 +1262,26 @@
         }
     }
 
-    //鑷姩娲惧彂浠诲姟
-    public synchronized void autoDistribute() {
-        Config config = configService.selectByCode("autoDistribute");
-        if (config == null) {
-            return;
-        }
-
-        if (config.getValue().equals("false")) {//鍒ゆ柇鏄惁寮�鍚嚜鍔ㄦ淳鍙戜换鍔�
-            return;
-        }
-
-        for (TaskWrk taskWrk : taskWrkService.selectReceive()) {
-
-            try {
-                taskWrkService.distribute(taskWrk.getTaskNo(), 9527L);
-            } catch (CoolException e) {
-                log.info(e.getMessage());
-            }
-        }
-    }
+//    //鑷姩娲惧彂浠诲姟
+//    public synchronized void autoDistribute() {
+//        Config config = configService.selectByCode("autoDistribute");
+//        if (config == null) {
+//            return;
+//        }
+//
+//        if (config.getValue().equals("false")) {//鍒ゆ柇鏄惁寮�鍚嚜鍔ㄦ淳鍙戜换鍔�
+//            return;
+//        }
+//
+//        for (TaskWrk taskWrk : taskWrkService.selectReceive()) {
+//
+//            try {
+//                taskWrkService.distribute(taskWrk.getTaskNo(), 9527L);
+//            } catch (CoolException e) {
+//                log.info(e.getMessage());
+//            }
+//        }
+//    }
 
     //agv鍙栨斁璐т换鍔″畬鎴�
     public synchronized void autoCompleteAGV() {
@@ -1486,7 +1465,7 @@
         int workNo1 = commonService.getWorkNo(WorkNoType.PAKIN.type);//鑾峰彇鍏ュ簱宸ヤ綔鍙�
         taskWrk.setTaskNo(result.getTaskNo());//浠诲姟鍙�
         taskWrk.setWrkNo(workNo1);
-        taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//浠诲姟鐘舵�侊細娲惧彂
+        taskWrk.setStatus(TaskStatusType.RECEIVE.id);//浠诲姟鐘舵�侊細鎺ユ敹
         taskWrk.setCreateTime(now);
         taskWrk.setIoType(1);//浠诲姟绫诲瀷
         taskWrk.setIoPri(13);//浼樺厛绾�

--
Gitblit v1.9.1