From 51d976a105e61297e1ae6ec16457292fadecd418 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 15 六月 2020 13:19:55 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   89 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 70 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 9cb39a0..ba25b86 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -40,7 +40,7 @@
 
     @Override
     @Transactional
-    public void startupFullStore(FullStoreParam param, Long userId) {
+    public String startupFullPutStore(FullStoreParam param, Long userId) {
         // 鍙傛暟闈炵┖鍒ゆ柇
         if (Cools.isEmpty(param.getDevpNo(), param.getList())) {
             throw new CoolException(BaseRes.PARAM);
@@ -57,7 +57,7 @@
         wrkMast.setIoTime(new Date());
         wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
         wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
-        wrkMast.setIoPri(10D); // 浼樺厛绾э細10
+        wrkMast.setIoPri(13D); // 浼樺厛绾э細10
         wrkMast.setCrnNo(dto.getCrnNo());
         wrkMast.setSourceStaNo(dto.getSourceStaNo());
         wrkMast.setStaNo(dto.getStaNo());
@@ -102,10 +102,11 @@
         } else {
             throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤");
         }
+        return dto.getLocNo();
     }
 
     @Override
-    public void emptyPlateIn(Integer devpNo, Long userId) {
+    public String emptyPlateIn(Integer devpNo, Long userId) {
         // 婧愮珯鐐圭姸鎬佹娴�
         BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo);
         // 鐢熸垚宸ヤ綔鍙�
@@ -118,7 +119,7 @@
         wrkMast.setIoTime(new Date());
         wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
         wrkMast.setIoType(10); // 鍏ュ嚭搴撶姸鎬侊細10.绌烘澘鍏ュ簱
-        wrkMast.setIoPri(10D); // 浼樺厛绾э細10
+        wrkMast.setIoPri(13D); // 浼樺厛绾э細10
         wrkMast.setCrnNo(dto.getCrnNo());
         wrkMast.setSourceStaNo(dto.getSourceStaNo());
         wrkMast.setStaNo(dto.getStaNo());
@@ -157,6 +158,7 @@
         } else {
             throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤");
         }
+        return dto.getLocNo();
     }
 
     @Override
@@ -222,10 +224,13 @@
 
     @Override
     @Transactional
-    public void completeWrkMast(String workNo) {
+    public void completeWrkMast(String workNo, Long userId) {
         WrkMast wrkMast = wrkMastService.selectById(workNo);
         if (Cools.isEmpty(wrkMast)){
             throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
+        }
+        if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) {
+            throw new CoolException("褰撳墠宸ヤ綔妗e凡瀹屾垚");
         }
         // 鍏ュ簱 + 搴撲綅杞Щ
         if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) {
@@ -234,6 +239,8 @@
         } else if (wrkMast.getWrkSts() > 10) {
             wrkMast.setWrkSts(14L);
         }
+        wrkMast.setModiTime(new Date());
+        wrkMast.setModiUser(userId);
         if (!wrkMastService.updateById(wrkMast)) {
             throw new CoolException("淇敼宸ヤ綔妗eけ璐�");
         }
@@ -241,30 +248,74 @@
 
     @Override
     @Transactional
-    public void cancelWrkMast(String workNo) {
+    public void cancelWrkMast(String workNo, Long userId) {
         WrkMast wrkMast = wrkMastService.selectById(workNo);
         if (Cools.isEmpty(wrkMast)){
             throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
         }
-        // 鍏ュ簱
+        String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
+        String locType = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
+        // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
         if (wrkMast.getWrkSts() < 4) {
-            if (wrkMast.getIoType() != 11) {
-
-            } else {
-                // 搴撲綅杞Щ
-
-
+            locNo = wrkMast.getLocNo();
+            locType = "O";
+            /**
+             * 搴撲綅杞Щ
+             * 鍙栨秷鍚� 婧愬簱浣� ==>> F.鍦ㄥ簱
+             *       鐩爣搴撲綅 ===>> O.绌哄簱浣�
+             **/
+            if (wrkMast.getIoType() == 11) {
+                // 搴撲綅杞Щ锛氭簮搴撲綅
+                LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
+                if (Cools.isEmpty(locMast)) {
+                    throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛屾簮搴撲綅涓嶅瓨鍦�:"+ wrkMast.getSourceLocNo());
+                }
+                locMast.setLocType("F");
+                locMast.setModiTime(new Date());
+                locMast.setModiUser(userId);
+                locMastService.updateById(locMast);
             }
-        // 鍑哄簱
-        } else if (wrkMast.getWrkSts() > 10) {
-
+        // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛�
+        } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) {
+            locNo = wrkMast.getSourceLocNo();
+            // 鍑哄簱 ===>> F.鍦ㄥ簱
+            if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) {
+                locType = "F";
+            // 绌烘澘鍑哄簱 ===>> D.绌烘《/绌烘爤鏉�
+            } else if (wrkMast.getIoType() == 110) {
+                locType = "D";
+            // 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉�
+            } else if (wrkMast.getIoType() == 11) {
+                locType = "F";
+                // 搴撲綅杞Щ锛氱洰鏍囧簱浣�
+                LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+                if (Cools.isEmpty(locMast)) {
+                    throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛岀洰鏍囧簱浣嶄笉瀛樺湪:"+ wrkMast.getSourceLocNo());
+                }
+                locMast.setLocType("O");
+                locMast.setModiTime(new Date());
+                locMast.setModiUser(userId);
+                locMastService.updateById(locMast);
+            }
+        } else {
+            throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
         }
         // 鍒犻櫎宸ヤ綔妗�
-        wrkMastService.deleteById(wrkMast);
+        boolean wrkMastRes = wrkMastService.deleteById(wrkMast);
         // 鍒犻櫎宸ヤ綔妗f槑缁�
-        wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo));
+        boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo));
         // 淇敼搴撲綅鐘舵��
-//        locMastService.updateById()
+        LocMast locMast = locMastService.selectById(locNo);
+        if (Cools.isEmpty(locMast)) {
+            throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐ワ紝搴撲綅涓嶅瓨鍦�:"+ locNo);
+        }
+        locMast.setLocType(locType);
+        locMast.setModiTime(new Date());
+        locMast.setModiUser(userId);
+        boolean locMastRes = locMastService.updateById(locMast);
+        if (!wrkMastRes || !wrkDetlRes || !locMastRes) {
+            throw new CoolException("淇濆瓨鏁版嵁澶辫触");
+        }
     }
 
 }

--
Gitblit v1.9.1