From 7059a74b4213af5e3c6de691ef92564e3cb1c316 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期五, 25 十一月 2022 13:58:11 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/WrkMastController.java |  100 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 100 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/WrkMastController.java b/src/main/java/com/zy/asrs/controller/WrkMastController.java
index c3cc1ee..e903acd 100644
--- a/src/main/java/com/zy/asrs/controller/WrkMastController.java
+++ b/src/main/java/com/zy/asrs/controller/WrkMastController.java
@@ -10,6 +10,7 @@
 import com.core.common.Cools;
 import com.core.common.DateUtils;
 import com.core.common.R;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.dto.WrkDetlWithCheck;
 import com.zy.asrs.service.*;
@@ -179,6 +180,105 @@
 
 
     /********************************杈归攱鏂板**************************/
+    @RequestMapping(value = "/wrkMast/red/wrk/mast")
+    @ManagerAuth(memo = "缁存姢宸ヤ綔妗�")
+    public R redWrkMast(@RequestBody List<WrkMast> list) {
+        if (list.isEmpty()) {
+            return R.error("璇疯嚦灏戦�夋嫨涓�琛屾暟鎹�");
+        }
+        StringBuilder logWrkMast= new StringBuilder();
+        try{
+            for (WrkMast entity : list){
+                WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", entity.getWrkNo()));
+                if (Cools.isEmpty(wrkMast)){
+                    continue;
+                }
+                if (wrkMast.getIoType()==1 || wrkMast.getIoType()==10){//1.鍏ュ簱//10.绌烘澘鍏ュ簱
+//                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo()));
+//                if (Cools.isEmpty(locMast)){
+//                    logWrkMast=logWrkMast+"宸ヤ綔鍙凤細"+wrkMast.getWrkNo()+"搴撲綅鏌ヨ涓烘棤!"+"//n";
+//                    continue;
+//                }
+//                if (wrkMast.getWrkSts()==9){//9.鍏ュ簱瀹屾垚
+//                    if (locMast.getLocSts().equals("F")){//F.鍦ㄥ簱
+//                        over(wrkMast);
+//                    }else if (locMast.getLocSts().equals("S")){//S.鍏ュ簱棰勭害
+//                        doIn(wrkMast,locMast);
+//                    }
+//                }
+                    continue;
+                }else if (wrkMast.getIoType()==53 || wrkMast.getIoType()==57){//53.鎷f枡鍐嶅叆搴�//57.鐩樼偣鍐嶅叆搴�
+                    continue;
+                }else if (wrkMast.getIoType()==101 || wrkMast.getIoType()==110){//101.鍑哄簱//110.绌烘澘鍑哄簱
+                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()));
+                    if (Cools.isEmpty(locMast)){
+                        logWrkMast.append("宸ヤ綔鍙凤細").append(wrkMast.getWrkNo()).append("搴撲綅鏌ヨ涓烘棤!").append("//n");
+                        continue;
+                    }
+                    if (wrkMast.getWrkSts()==17){//17.鍑哄簱瀹屾垚
+                        if (locMast.getLocSts().equals("O")){//O.绌哄簱浣�
+                            logWrkMast.append("缁存姢宸ヤ綔妗o細").append(wrkMast.getWrkNo()).append("//n");
+                        }else if (locMast.getLocSts().equals("R")){//R.鍑哄簱棰勭害
+                            doOut(wrkMast,locMast);
+                            logWrkMast.append("缁存姢宸ヤ綔妗o細").append(wrkMast.getWrkNo()).append("//n");
+                        }else {
+                            logWrkMast.append("宸ヤ綔鍙凤細").append(wrkMast.getWrkNo()).append(" 搴撲綅鐘舵�佸紓甯�!").append("//n");
+                            continue;
+                        }
+                        wrkMast.setWrkSts(18L);
+                        wrkMastService.update(wrkMast,new EntityWrapper<WrkMast>().eq("wrk_no",wrkMast.getWrkNo()));
+                    }
+//                    else if (wrkMast.getWrkSts()==18){//18.鍑哄簱鏇存柊瀹屾垚
+//                        if (locMast.getLocSts().equals("O")){//O.绌哄簱浣�
+//                            over(wrkMast);
+//                            logWrkMast.append("缁存姢宸ヤ綔妗o細").append(wrkMast.getWrkNo()).append("//n");
+//                        }else if (locMast.getLocSts().equals("R")){//R.鍑哄簱棰勭害
+//                            doOut(wrkMast,locMast);
+//                            over(wrkMast);
+//                            logWrkMast.append("缁存姢宸ヤ綔妗o細").append(wrkMast.getWrkNo()).append("//n");
+//                        } else {
+//                            logWrkMast.append("宸ヤ綔鍙凤細").append(wrkMast.getWrkNo()).append(" 搴撲綅鐘舵�佸紓甯�!").append("//n");
+//                            continue;
+//                        }
+//                        wrkMastService.delete(new EntityWrapper<WrkMast>().eq("wrk_no",wrkMast.getWrkNo()));
+//                    }
+                }else if (wrkMast.getIoType()==103 || wrkMast.getIoType()==107){//103.鎷f枡鍑哄簱//107.鐩樼偣鍑哄簱
+                    continue;
+                }
+            }
+        }catch (Exception e){
+            return R.error(logWrkMast+"鎿嶄綔澶辫触");
+        }
+        return R.ok(logWrkMast+"鎿嶄綔鎴愬姛");
+    }
+    private void doOut(WrkMast wrkMast,LocMast locMast){
+        try{
+            Date now = new Date();
+            // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
+            if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) {
+                throw new CoolException("鍒犻櫎搴撳瓨鏄庣粏澶辫触:workNo="+wrkMast.getWrkNo()+"sourceLocNo="+wrkMast.getSourceLocNo());
+            }
+            // 淇敼婧愬簱浣嶇姸鎬� R ===>> O
+            if (locMast.getLocSts().equals("R")) {
+                locMast.setLocSts("O");
+                locMast.setBarcode("");
+                locMast.setFrozen(0);
+                locMast.setModiTime(now);
+                locMast.setIoTime(now);
+                locMast.setFrozenMemo("");
+                if (!locMastService.updateById(locMast)) {
+                    throw new CoolException("淇敼婧愬簱浣嶇姸鎬佸け璐�:workNo="+wrkMast.getWrkNo()+"sourceLocNo="+wrkMast.getSourceLocNo());
+                }
+            }
+        }catch (Exception e){
+            throw new CoolException(e+"鎿嶄綔澶辫触");
+        }
+    }
+    private void doIn(WrkMast wrkMast,LocMast locMast){ }
+    private void over(WrkMast wrkMast){
+
+    }
+
     @GetMapping(value = "/wrkMast/checkDetl")
     public R pickDetl(String barcode) {
         WrkMast wrkMast = wrkMastService.selectByBarcode(barcode);

--
Gitblit v1.9.1