From c22edcc5e29212dfa3e7b629c45ba00c30f310f8 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 31 五月 2024 16:01:34 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java |  409 ++++++++++++++++++++++++++++++++++------------------------
 1 files changed, 238 insertions(+), 171 deletions(-)

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 f64eed8..2ddd2f1 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -54,202 +54,264 @@
 
     @Transactional
     public ReturnT<String> completedPutWayWrk(AgvWrkMast agvWrkMast) {
-        int wrkNo = agvWrkMast.getWrkNo();
-        String barcode = agvWrkMast.getBarcode();
-        String orderNo = getOrderNoByWrkNo(wrkNo);
-        String agvBasDevp = "";
-        if (agvWrkMast.getIoType() > 100) {
-            agvBasDevp = agvWrkMast.getLocNo();
-        } else {
-            agvBasDevp = agvWrkMast.getSourceLocNo();
-        }
-
-
-        //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
-        agvWrkMast.setWrkSts(207L);
-        agvWrkMastService.updateById(agvWrkMast);
-        // 绌烘澘鍏ュ簱 璁剧疆搴撲綅鐘舵�佷负D.绌烘《/绌烘爤鏉�
-        String locSts = agvWrkMast.getIoType() == 10 ? "D" : "F";
-        if (agvWrkMast.getIoType() == 10 || agvWrkMast.getIoType() == 109) {
-            if (agvWrkMast.getIoType() == 109 && agvWrkMast.getLocNo().substring(0,2).equals("DB")) {
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"R",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+        try{
+            int wrkNo = agvWrkMast.getWrkNo();
+            String barcode = agvWrkMast.getBarcode();
+            String orderNo = getOrderNoByWrkNo(wrkNo);
+            String agvBasDevp = "";
+            if (agvWrkMast.getIoType() > 100) {
+                agvBasDevp = agvWrkMast.getLocNo();
             } else {
-                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                agvBasDevp = agvWrkMast.getSourceLocNo();
             }
-        } else {
-            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
-        }
 
-        //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
-        agvWrkMastLogService.save(agvWrkMast);
-        //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
-        agvWrkDetlLogService.save(wrkNo);
-        //绫诲瀷涓哄叆搴撴椂
-        if(agvWrkMast.getIoType() == 1){
-            //鏇存柊鐩爣搴撲綅鏄庣粏
-            log.info("鏇存柊鐩爣搴撲綅鏄庣粏 agvWrkMast.getLocNo(): " + agvWrkMast.getLocNo() + ", wrkNo: " + wrkNo);
-            agvLocDetlService.addLocDetlInfo(agvWrkMast.getLocNo(),wrkNo);
-            //鐢熸垚鍏ュ簱閫氱煡鍘嗗彶妗�
-            boolean save = agvWaitPakinLogService.save(barcode);
-            //鍒犻櫎鍏ュ簱閫氱煡妗�
-            log.info("鍒犻櫎鍏ュ簱閫氱煡妗� supp_code: " + barcode);
-            agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",barcode));
-        }
-        //绫诲瀷涓哄簱浣嶇Щ杞椂
-        if(agvWrkMast.getIoType() == 11 || agvWrkMast.getIoType() == 12){
-            //鏇存柊搴撳瓨鏄庣粏
-            agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
-            //淇敼婧愬簱浣嶇姸鎬佷负O
-            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
-        }
 
-        //绫诲瀷涓哄簱浣嶇Щ杞椂
-        if(agvWrkMast.getIoType() == 108){
-            //鏇存柊搴撳瓨鏄庣粏
-            agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
-            //淇敼婧愬簱浣嶇姸鎬佷负O
-            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
-        }
+            //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
+            agvWrkMast.setWrkSts(207L);
+            agvWrkMastService.updateById(agvWrkMast);
+            // 绌烘澘鍏ュ簱 璁剧疆搴撲綅鐘舵�佷负D.绌烘《/绌烘爤鏉�
+            String locSts = agvWrkMast.getIoType() == 10 ? "D" : "F";
 
-        if(agvWrkMast.getIoType() == 109){
-            if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
-            } else {
-                //淇敼婧愬簱浣嶇姸鎬佷负O
-                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
-                // 鏂板缓宸ヤ綔妗�
-                Date now = new Date();
-                createWrkMast(109, 201L, agvWrkMast.getLocNo(), "", agvWrkMast.getBarcode(), now, 9527L, agvWrkMast.getWhsType(), 0);
+            if (agvWrkMast.getIoType() != 111) {
+                //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
+                agvWrkMastLogService.save(agvWrkMast);
+                //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
+                agvWrkDetlLogService.save(wrkNo);
             }
+
+            switch (agvWrkMast.getIoType()){
+                case 10:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    break;
+                case 109:
+                    // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+                    if (agvWrkMast.getLocNo().substring(0,2).equals("DB")) {
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                        // 鎺ラ┏浣� -- 搴撲綅
+                    } else {
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    }
+                    // 鎺ラ┏浣� -- 搴撲綅
+                    if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
+                        // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+                    } else {
+                        //淇敼婧愬簱浣嶇姸鎬佷负O
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+                    }
+                    break;
+                case 111:
+                    // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+                    if (agvWrkMast.getLocNo().substring(0,2).equals("DB")) {
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                        // 鎺ラ┏浣� -- 搴撲綅
+                    } else {
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    }
+
+                    // 鎺ラ┏浣� -- 搴撲綅
+                    if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
+                        // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+                    } else {
+                        //淇敼婧愬簱浣嶇姸鎬佷负O
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+                    }
+                    break;
+                case 113:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    // 鎺ラ┏浣� -- 搴撲綅
+                    if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
+                    }
+                    break;
+                case 1:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    //鏇存柊鐩爣搴撲綅鏄庣粏
+                    log.info("鏇存柊鐩爣搴撲綅鏄庣粏 agvWrkMast.getLocNo(): " + agvWrkMast.getLocNo() + ", wrkNo: " + wrkNo);
+                    agvLocDetlService.addLocDetlInfo(agvWrkMast.getLocNo(),wrkNo);
+                    //鐢熸垚鍏ュ簱閫氱煡鍘嗗彶妗�
+                    boolean save = agvWaitPakinLogService.save(barcode);
+                    //鍒犻櫎鍏ュ簱閫氱煡妗�
+                    log.info("鍒犻櫎鍏ュ簱閫氱煡妗� supp_code: " + barcode);
+                    agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",barcode));
+                    break;
+                case 11:
+                case 12:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    //鏇存柊搴撳瓨鏄庣粏
+                    agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
+                    //淇敼婧愬簱浣嶇姸鎬佷负O
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+                    break;
+                case 108:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    //鏇存柊搴撳瓨鏄庣粏
+                    agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
+                    //淇敼婧愬簱浣嶇姸鎬佷负O
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+                    break;
+                case 112:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    // 鎺ラ┏浣� -- 搴撲綅
+                    if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
+                        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+                        // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+                    } else {
+                        //淇敼婧愬簱浣嶇姸鎬佷负O
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+                    }
+                    break;
+                case 58:
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
+                    break;
+                default:
+                    return null;
+            }
+            if (agvWrkMast.getIoType() != 111) {
+                //鍒犻櫎AGV宸ヤ綔妗�
+                agvWrkMastService.deleteById(wrkNo);
+                //鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
+                agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
+            }
+
+            if(!isJSON(orderNo)){
+                //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
+                orderService.checkComplete(orderNo);
+            }else{
+                List<Map> maps = JSONArray.parseArray(orderNo, Map.class);
+                maps.forEach(map -> {
+                    String o = map.get("orderNo").toString();
+                    orderService.checkComplete(o);
+                });
+            }
+
+            return SUCCESS;
+        }catch (Exception e){
+            log.error(""+e.getMessage());
         }
-        if (agvWrkMast.getIoType() == 58) {
-            agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
-        }
-
-
-
-        //鍒犻櫎AGV宸ヤ綔妗�
-        agvWrkMastService.deleteById(wrkNo);
-        //鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
-        agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
-
-        if(!isJSON(orderNo)){
-            //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
-            orderService.checkComplete(orderNo);
-        }else{
-            List<Map> maps = JSONArray.parseArray(orderNo, Map.class);
-            maps.forEach(map -> {
-                String o = map.get("orderNo").toString();
-                orderService.checkComplete(o);
-            });
-        }
-
-        return SUCCESS;
+        return FAIL;
     }
 
 
     @Transactional
     public ReturnT<String> completedCarryWrk(AgvWrkMast agvWrkMast) {
-        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() == 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);
-            }catch (Exception e){
-                e.printStackTrace();
-                log.error(e.getMessage());
+        try{
+            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() == 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);
+                }catch (Exception e){
+                    e.printStackTrace();
+                    log.error(e.getMessage());
+                }
             }
-        }
 
-        //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
-        agvWrkMastLogService.save(agvWrkMast);
-        //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
-        agvWrkDetlLogService.save(wrkNo);
-        //鍒犻櫎AGV宸ヤ綔妗�
-        agvWrkMastService.deleteById(wrkNo);
-        //鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
-        agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
-        if(!isJSON(orderNo)){
-            //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
-            orderService.checkComplete(orderNo);
-        }else{
-            List<Map> maps = JSONArray.parseArray(orderNo, Map.class);
-            maps.forEach(map -> {
-                String o = map.get("orderNo").toString();
-                orderService.checkComplete(o);
-            });
+            //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
+            agvWrkMastLogService.save(agvWrkMast);
+            //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
+            agvWrkDetlLogService.save(wrkNo);
+            //鍒犻櫎AGV宸ヤ綔妗�
+            agvWrkMastService.deleteById(wrkNo);
+            //鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
+            agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
+            if(!isJSON(orderNo)){
+                //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
+                orderService.checkComplete(orderNo);
+            }else{
+                List<Map> maps = JSONArray.parseArray(orderNo, Map.class);
+                maps.forEach(map -> {
+                    String o = map.get("orderNo").toString();
+                    orderService.checkComplete(o);
+                });
+            }
+            return SUCCESS;
+        }catch (Exception e){
+            log.error(""+e.getMessage());
         }
-        return SUCCESS;
+        return FAIL;
     }
 
     @Transactional
     public ReturnT<String> completedCarryWrk2(AgvWrkMast agvWrkMast) {
-        int wrkNo = agvWrkMast.getWrkNo();
-        String orderNo = getOrderNoByWrkNo(wrkNo);
-        String agvBasDevp = "";
-        if (agvWrkMast.getIoType() > 100) {
-            agvBasDevp = agvWrkMast.getLocNo();
-        } else {
-            agvBasDevp = agvWrkMast.getSourceLocNo();
-        }
-        //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
-        agvWrkMast.setWrkSts(207L);
-        agvWrkMastService.updateById(agvWrkMast);
-        //淇敼婧愬簱浣嶇姸鎬佷负O
-        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
-        if(agvWrkMast.getIoType() == 101){
-            //鏇存柊鐩爣搴撲綅鏄庣粏 101.鍑哄簱 鍒犻櫎婧愬簱浣嶅簱瀛樻槑缁�
-            agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
-        }
+        try{
+            int wrkNo = agvWrkMast.getWrkNo();
+            String orderNo = getOrderNoByWrkNo(wrkNo);
+            String agvBasDevp = "";
+            if (agvWrkMast.getIoType() > 100) {
+                agvBasDevp = agvWrkMast.getLocNo();
+            } else {
+                agvBasDevp = agvWrkMast.getSourceLocNo();
+            }
+            //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
+            agvWrkMast.setWrkSts(207L);
+            agvWrkMastService.updateById(agvWrkMast);
+            //淇敼婧愬簱浣嶇姸鎬佷负O
+            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+            if(agvWrkMast.getIoType() == 101){
+                //鏇存柊鐩爣搴撲綅鏄庣粏 101.鍑哄簱 鍒犻櫎婧愬簱浣嶅簱瀛樻槑缁�
+                agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
+            }
 
-        //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
-        agvWrkMastLogService.save(agvWrkMast);
-        //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
-        agvWrkDetlLogService.save(wrkNo);
-        //鍒犻櫎AGV宸ヤ綔妗�
-        agvWrkMastService.deleteById(wrkNo);
-        //鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
-        agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
-        if(!isJSON(orderNo)){
-            //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
-            orderService.checkComplete(orderNo);
-        }else{
-            List<Map> maps = JSONArray.parseArray(orderNo, Map.class);
-            maps.forEach(map -> {
-                String o = map.get("orderNo").toString();
-                orderService.checkComplete(o);
-            });
+            //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
+            agvWrkMastLogService.save(agvWrkMast);
+            //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
+            agvWrkDetlLogService.save(wrkNo);
+            //鍒犻櫎AGV宸ヤ綔妗�
+            agvWrkMastService.deleteById(wrkNo);
+            //鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
+            agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
+            if(!isJSON(orderNo)){
+                //妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
+                orderService.checkComplete(orderNo);
+            }else{
+                List<Map> maps = JSONArray.parseArray(orderNo, Map.class);
+                maps.forEach(map -> {
+                    String o = map.get("orderNo").toString();
+                    orderService.checkComplete(o);
+                });
+            }
+            return SUCCESS;
+        }catch (Exception e){
+            log.error(""+e.getMessage());
         }
-        return SUCCESS;
+        return FAIL;
     }
 
     @Transactional
     @Synchronized
     public ReturnT<String> startPutWayWrk(AgvWrkMast agvWrkMast) throws IOException {
 
-        //涓嬪彂浠诲姟
-        int startWrkCode = agvWrkMastService.startWrk(agvWrkMast);
-        if(startWrkCode != 0){
-            throw new CoolException("浠诲姟涓嬪彂澶辫触");
-        }
+        try{
+            //涓嬪彂浠诲姟
+            int startWrkCode = agvWrkMastService.startWrk(agvWrkMast);
+            if(startWrkCode != 0){
+                throw new CoolException("浠诲姟涓嬪彂澶辫触");
+            }
 
-        agvWrkMast.setWrkSts(202L);
-        agvWrkMastService.updateById(agvWrkMast);
-        if(agvWrkMast.getIoType() == 1){
-            //淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
-            agvWaitPakinService.updateIoStatus(agvWrkMast.getWrkNo(),"Y");
+            agvWrkMast.setWrkSts(202L);
+            agvWrkMastService.updateById(agvWrkMast);
+            if(agvWrkMast.getIoType() == 1){
+                //淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
+                agvWaitPakinService.updateIoStatus(agvWrkMast.getWrkNo(),"Y");
+            }
+            return SUCCESS;
+        }catch (Exception e){
+            log.error("淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y"+e.getMessage());
         }
-        return SUCCESS;
-
+        return FAIL;
     }
 
     @Transactional
@@ -257,11 +319,16 @@
     public ReturnT<String> startAllcationIn(AgvWrkMast agvWrkMast) throws IOException {
         
         //涓嬪彂浠诲姟
-        int startWrkCode = agvWrkMastService.startAllcationIn(agvWrkMast);
-        if(startWrkCode != 0){
-            throw new CoolException("浠诲姟涓嬪彂澶辫触");
+        try{
+            int startWrkCode = agvWrkMastService.startAllcationIn(agvWrkMast);
+            if(startWrkCode != 0){
+                throw new CoolException("浠诲姟涓嬪彂澶辫触");
+            }
+            return SUCCESS;
+        }catch (Exception e){
+            log.error("浠诲姟涓嬪彂澶辫触"+e.getMessage());
         }
-        return SUCCESS;
+        return FAIL;
 
     }
 

--
Gitblit v1.9.1