From 7c4565df1d655c703f6d8269040ecd9eaec8ea4a Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期日, 02 六月 2024 12:08:28 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java                     |    1 
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java               |   21 ++++++++--
 src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java            |   17 +++++---
 src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java |   24 ++++++------
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java              |   12 +++--
 src/main/java/com/zy/asrs/task/AutoMoveScheduler.java                       |    1 
 src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java       |    6 +-
 src/main/java/com/zy/asrs/task/AutoMoveCreateExecuteScheduler.java          |    4 +-
 8 files changed, 53 insertions(+), 33 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
index c12b79e..c9cf88c 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -116,10 +116,16 @@
         Date now = new Date();
         List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", pickParams.getLocNo()));
 
+        AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
+
+        if (Cools.isEmpty(agvWrkMast)){
+            return "澶辫触锛屾湭鏌ュ埌宸ヤ綔涓绘。锛屽伐浣滃彿锛�"+pickParams.getWrkNo();
+        }
         for (PickParam.Pick pick : pickParams.getPicks()) {
             if (pick.getCount().equals(0D)) continue;
             Double count = 0.0D;
             AgvWrkDetl agvWrkDetl = agvWrkDetlService.selectOne(new EntityWrapper<AgvWrkDetl>().eq("matnr", pick.getMatnr()).eq("three_code", pick.getThreeCode()).eq("supp_code",pick.getSuppCode()));
+
             if (Cools.isEmpty(agvWrkDetl)) {
                 AgvWrkDetl wrkDetl = new AgvWrkDetl();
                 Mat mat = matService.selectByMatnr(pick.getMatnr());
@@ -129,7 +135,7 @@
                 wrkDetl.sync(mat);
                 wrkDetl.setWrkNo(pickParams.getWrkNo());
                 wrkDetl.setOrderNo(pick.getOrderNo());
-                wrkDetl.setIoTime(now);
+                wrkDetl.setIoTime(agvWrkMast.getIoTime());
                 wrkDetl.setAnfme(pick.getCount()); // 鏁伴噺
                 wrkDetl.setSuppCode(pick.getSuppCode()); // 璐ф灦鏉$爜
                 wrkDetl.setAppeUser(userId);
@@ -167,7 +173,6 @@
             }
         }
         if (agvLocDetls.size() == sameNumber) {
-            AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
             agvWrkMast.setIoType(101);
             agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
         }
@@ -394,15 +399,15 @@
             }
         } else {
             if (agvLocMast.getFloor() != floor) {
-                if (floor==1 && agvLocMast.getFloor()!=1){
-                    ioType = 121;
-                }else {
+//                if (floor==1 && agvLocMast.getFloor()!=1){
+//                    ioType = 121;
+//                }else {
                     if (agvLocMast.getFloor() == 1) {
                         throw new CoolException("褰撳墠搴撲綅璇烽�夋嫨璋冩嫧鍗曡皟鎷紒");
                     } else {
                         ioType = 12;
                     }
-                }
+//                }
             } else {
                 ioType = 11;
             }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index 3464aa5..82b39b9 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -584,8 +584,12 @@
             }
             return;
 
-        } else {
-            agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+        } else  {
+            if(wrkMast.getIoType() == 110){
+                agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),206,"鎵嬪姩瀹屾垚",userId);
+            } else {
+                agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+            }
         }
 
         //鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱
@@ -598,9 +602,7 @@
             agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getSourceLocNo(),"O","",wrkMast.getWhsType().shortValue());
         }
         //鍑哄簱浠诲姟 110.绌烘澘鍑哄簱
-        if(wrkMast.getIoType() == 110){
-            agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getLocNo(),"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
-        }
+
         if (wrkMast.getIoType() == 10) {
             agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getSourceLocNo(),"O",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
         }
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index 11503e2..7ac722b 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -132,6 +132,7 @@
                 .or().eq("io_type", 12)
                 .or().eq("io_type", 109)
                 .or().eq("io_type", 108)
+                .or().eq("io_type", 111)
                 .or().eq("io_type", 112)
                 .or().eq("io_type", 113)).getRecords();
 
diff --git a/src/main/java/com/zy/asrs/task/AutoMoveCreateExecuteScheduler.java b/src/main/java/com/zy/asrs/task/AutoMoveCreateExecuteScheduler.java
index 9d8cd54..eff6a53 100644
--- a/src/main/java/com/zy/asrs/task/AutoMoveCreateExecuteScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoMoveCreateExecuteScheduler.java
@@ -42,7 +42,7 @@
     /**
      * 鐢熸垚agv_wrk_mast_execute浠诲姟
      */
-    @Scheduled(cron = "0/2 * * * * ? ")
+//    @Scheduled(cron = "0/2 * * * * ? ")
     private void autoMove(){
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 121).eq("wrk_sts",11));
         for (AgvWrkMast agvWrkMast:agvWrkMastList){
@@ -109,7 +109,7 @@
     /**
      * 瀹屾垚agv_wrk_mast_execute浠诲姟
      */
-    @Scheduled(cron = "0/2 * * * * ? ")
+//    @Scheduled(cron = "0/2 * * * * ? ")
     private void autoMoveEnd(){
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 121).eq("wrk_sts",12));
         for (AgvWrkMast agvWrkMast:agvWrkMastList){
diff --git a/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java b/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
index 26a801d..2639d03 100644
--- a/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
@@ -110,6 +110,7 @@
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
                 .eq("wrk_sts", 22)
                 .andNew().eq("io_type",111)
+                .orderBy("io_pri",false)
                 .orderBy("appe_time",true)
         );
         if (agvWrkMastList.isEmpty()) {
diff --git a/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java b/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java
index ac02f92..801e139 100644
--- a/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutoMoveTwoAndThreeGoOneScheduler.java
@@ -31,7 +31,7 @@
     /**
      * 鎵цagv_wrk_mast_execute浠诲姟
      */
-    @Scheduled(cron = "0/2 * * * * ? ")
+//    @Scheduled(cron = "0/2 * * * * ? ")
     private void autoMove(){
         List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectList(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("wrk_sts",0L));
         for (WrkMastExecute wrkMastExecute:wrkMastExecuteList){
@@ -48,7 +48,7 @@
     /**
      * 涓嬩竴姝gv_wrk_mast_execute浠诲姟
      */
-    @Scheduled(cron = "0/2 * * * * ? ")
+//    @Scheduled(cron = "0/2 * * * * ? ")
     private void autoMove2(){
         List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectList(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("wrk_sts",3L));
         for (WrkMastExecute wrkMastExecute:wrkMastExecuteList){
@@ -79,7 +79,7 @@
     /**
      * 涓嬩竴姝gv_wrk_mast_execute浠诲姟
      */
-    @Scheduled(cron = "0/2 * * * * ? ")
+//    @Scheduled(cron = "0/2 * * * * ? ")
     private void autoMove3(){
         List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectList(new EntityWrapper<WrkMastExecute>().eq("io_type", 121).eq("wrk_sts",2L));
         for (WrkMastExecute wrkMastExecute:wrkMastExecuteList){
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index c66f01b..4436169 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -233,26 +233,29 @@
     @Transactional
     public ReturnT<String> completedCarryWrk(AgvWrkMast agvWrkMast) {
         try{
+            Date now = new Date();
             int wrkNo = agvWrkMast.getWrkNo();
             String orderNo = getOrderNoByWrkNo(wrkNo);
             //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
             agvWrkMast.setWrkSts(207L);
             agvWrkMastService.updateById(agvWrkMast);
             //淇敼婧愬簱浣嶇姸鎬佷负O
-            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+            if (agvWrkMast.getIoType() == 110) {
+                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+            }
             if(agvWrkMast.getIoType() == 101){
                 //鏇存柊鐩爣搴撲綅鏄庣粏 101.鍑哄簱 鍒犻櫎婧愬簱浣嶅簱瀛樻槑缁�
                 agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
                 //鐢熸垚绌烘澘鍏ュ簱浠诲姟
                 Short containerType = Short.valueOf(agvWrkMast.getBarcode().substring(0, 2));
                 try {
-                    //agvWorkService.emptyPlateIn(agvWrkMast.getLocNo(),agvWrkMast.getBarcode(),containerType,9527L,true);
+//                    agvWorkService.emptyPlateIn(agvWrkMast.getLocNo(),agvWrkMast.getBarcode(),containerType,9527L,true);
                     AgvWrkMast wrkMast = new AgvWrkMast();
                     //宸ヤ綔鐘舵��
                     wrkMast.setWrkSts(201L);
                     //鍏ュ嚭搴撶被鍨�
                     wrkMast.setIoType(10);
-                    wrkMast.setIoTime(new Date());
+                    wrkMast.setIoTime(now);
                     //浼樺厛绾�
                     wrkMast.setIoPri(300.0);
                     //婧愮珯鐐�
@@ -265,14 +268,22 @@
                     wrkMast.setWhsType(Integer.valueOf(agvWrkMast.getBarcode().substring(0, 2)));
 
                     wrkMast.setAppeUser(9527L);
-                    wrkMast.setAppeTime(new Date());
+                    wrkMast.setAppeTime(now);
                     wrkMast.setModiUser(9527L);
-                    wrkMast.setModiTime(new Date());
+                    wrkMast.setModiTime(now);
 
                     if (!agvWrkMastService.insertByIncrease(wrkMast)) {
                         throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
                     }
+                    AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getSourceLocNo());
+                    agvLocMast.setLocSts("S");
+                    agvLocMast.setModiTime(now);
+                    agvLocMastService.updateById(agvLocMast);
 
+                    AgvBasDevp agvBasDevp = agvBasDevpService.selectById(agvWrkMast.getLocNo());
+                    agvBasDevp.setLocSts("R");
+                    agvBasDevp.setLocType2(Short.valueOf(agvWrkMast.getBarcode().substring(0, 2)));
+                    agvBasDevpService.updateById(agvBasDevp);
                 }catch (Exception e){
                     e.printStackTrace();
                     log.error(e.getMessage());
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java
index 5cf9ae2..bb9bbca 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveTwoAndThreeGoOneHandler.java
@@ -104,18 +104,18 @@
     }
 
     private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip){
-        if (true){
-            apiLogService.save(
-                    namespace,
-                    url + path,
-                    appkey,
-                    ip,
-                    JSON.toJSONString(JSONObject.toJSONString(requestParam)),
-                    "",
-                    true
-            );
-            return 0;
-        }
+//        if (true){
+//            apiLogService.save(
+//                    namespace,
+//                    url + path,
+//                    appkey,
+//                    ip,
+//                    JSON.toJSONString(JSONObject.toJSONString(requestParam)),
+//                    "",
+//                    true
+//            );
+//            return 0;
+//        }
         String response = "";
         boolean success = false;
 

--
Gitblit v1.9.1