From 6aa54366fa3c46567875e7df66dab43f4b897792 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 07 七月 2020 10:58:06 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   63 ++++++++++++++++++++++++++++---
 1 files changed, 57 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 022c4b3..ef6cf41 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -29,10 +29,10 @@
     @Autowired
     private WaitPakinService waitPakinService;
 
-    public void start() {
+    public boolean start() {
         List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData();
         if (wrkMasts.isEmpty()) {
-            return;
+            return true;
         }
         for (WrkMast wrkMast : wrkMasts) {
             // 4.鍏ュ簱瀹屾垚
@@ -43,6 +43,7 @@
                 doOut(wrkMast);
             }
         }
+        return true;
     }
 
     private void doIn(WrkMast wrkMast){
@@ -274,11 +275,61 @@
     }
 
     private void doOut(WrkMast wrkMast){
-
+        Date now = new Date();
+        LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
+        if (null == locMast) {
+            exceptionHandle(""); // todo
+            return;
+        }
+        switch (wrkMast.getIoType()) {
+            // 鍏ㄦ澘鍑哄簱
+            case 101:
+                // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
+                List<WrkDetl> wrkDetls101 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+                if (wrkDetls101.isEmpty()) {
+                    exceptionHandle(""); // todo
+                }
+                for (WrkDetl wrkDetl : wrkDetls101) {
+                    // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y
+                }
+                // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
+                if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) {
+                    exceptionHandle(""); // todo
+                }
+                // 淇敼搴撲綅鐘舵�� R ===>> O
+                if (locMast.getLocType().equals("R")) {
+                    locMast.setLocType("O");
+                    locMast.setBarcode("");
+                    locMast.setModiTime(now);
+                    locMast.setIoTime(now);
+                    if (!locMastService.updateById(locMast)) {
+                        exceptionHandle(""); // todo
+                    }
+                }
+                break;
+            // 绌烘澘鍑哄簱
+            case 110:
+                // 淇敼搴撲綅鐘舵�� R ===>> O
+                if (locMast.getLocType().equals("R")) {
+                    locMast.setLocType("O");
+                    locMast.setBarcode("");
+                    locMast.setModiTime(now);
+                    locMast.setIoTime(now);
+                    if (!locMastService.updateById(locMast)) {
+                        exceptionHandle(""); // todo
+                    }
+                }
+                break;
+            default:
+                break;
+        }
+        // 淇敼宸ヤ綔涓绘。鐘舵��
+        wrkMast.setWrkSts(15L);
+        wrkMast.setModiTime(now);
+        if (!wrkMastService.updateById(wrkMast)) {
+            exceptionHandle(""); // todo
+        }
     }
-
-
-
 
     public static void main(String[] args) {
         for (int i = 0;i<10;i++) {

--
Gitblit v1.9.1