From 91eca979b480dff62809368a5c6563c9e0fcc851 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期日, 08 六月 2025 08:29:49 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java |   88 +++++++++++++++++++++++++++++++++-----------
 1 files changed, 66 insertions(+), 22 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
index c237c06..8afe071 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
@@ -3,13 +3,16 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.core.common.Cools;
+import com.core.common.R;
 import com.core.exception.CoolException;
 import com.zy.asrs.domain.enums.TaskStatusType;
 import com.zy.asrs.domain.enums.WorkNoType;
+import com.zy.asrs.entity.LocMast;
 import com.zy.asrs.entity.StaDesc;
 import com.zy.asrs.mapper.TaskWrkMapper;
 import com.zy.asrs.entity.TaskWrk;
 import com.zy.asrs.service.ApiLogService;
+import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.service.StaDescService;
 import com.zy.asrs.service.TaskWrkService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
@@ -50,6 +53,10 @@
     private String taskStatusFeedbackPath;
     @Autowired
     private ApiLogService apiLogService;
+    @Autowired
+    private LocMastService locMastService;
+    @Autowired
+    private TaskWrkService taskWrkService;
 
     @Override
     public TaskWrk selectByTaskNo(String taskNo) {
@@ -74,29 +81,7 @@
     @Override
     @Transactional(propagation = Propagation.REQUIRES_NEW)
     public void distribute(String taskNo, Long userId) {
-        TaskWrk taskWrk = this.selectByTaskNo(taskNo);
-        if (taskWrk == null) {
-            throw new CoolException("WMS浠诲姟涓嶅瓨鍦�");
-        }
 
-        if (taskWrk.getStatus() != 1) {
-            throw new CoolException("浠诲姟宸叉淳鍙�");
-        }
-
-        //鍒涘缓浠诲姟
-        if (taskWrk.getIoType() == 1) {
-            //1.鍏ュ簱
-            if (taskWrk.getStartPoint() == null || taskWrk.getTargetPoint() == null) {
-                throw new CoolException("鏈帴鏀跺埌璧风偣鍜岀粓鐐癸紝涓嶈繘琛屾淳鍙�");
-            }
-            startup(taskWrk, userId);
-        }else if(taskWrk.getIoType() == 2){
-            //2.鍑哄簱
-            stockOut(taskWrk, userId);
-        } else if (taskWrk.getIoType() == 3) {
-            //3.搴撴牸绉昏浇
-            locMove(taskWrk, userId);
-        }
     }
 
     @Override
@@ -247,4 +232,63 @@
     public int saveToHistory(String taskNo) {
         return this.baseMapper.saveToHistory(taskNo);
     }
+
+    @Override
+    public R taskComplete(TaskWrk taskWrk) {
+        LocMast locMast = new LocMast();
+        switch (taskWrk.getIoType()) {
+                //鍏ュ簱
+            case 1:
+                taskWrk.setModiTime(new Date());
+                taskWrk.setWrkSts(6);//鍏ュ簱瀹屾垚--鍑嗗涓婃姤wms
+                locMast = locMastService.selectByLocNo(taskWrk.getOriginTargetPoint());
+                if (locMast == null) {
+                    return R.error("娌℃湁鎵惧埌璇ュ簱浣�="+taskWrk.getOriginTargetPoint());
+                }
+                locMast.setLocSts("F");
+                locMastService.updateById(locMast);
+                break;
+                //鍑哄簱
+            case 2:
+                if(taskWrk.getWrkSts()>=15){
+                    return R.ok();
+                }
+                taskWrk.setModiTime(new Date());
+                taskWrk.setWrkSts(15);//RCS鍑哄簱瀹屾垚--銆嬪啓鍏ヨ緭閫佺嚎宸ヤ綔鍙�
+                locMast = locMastService.selectByLocNo(taskWrk.getOriginStartPoint());
+                if (locMast == null) {
+                    return R.error("娌℃湁鎵惧埌璇ュ簱浣�="+taskWrk.getOriginStartPoint());
+                }
+                locMast.setLocSts("O");
+                locMastService.updateById(locMast);
+                log.info("RCS鍑哄簱浠诲姟瀹屾垚鏇存柊WCS浠诲姟鐘舵��={}",taskWrk);
+                break;
+                //绉诲簱
+//            case 3:
+//                taskWrk.setModiTime(new Date());
+//                taskWrk.setWrkSts(6);//鍏ュ簱瀹屾垚--鍑嗗涓婃姤wms
+//                //婧愬簱浣�
+//                locMast = locMastService.selectByLocNo(taskWrk.getOriginTargetPoint());
+//                if (locMast == null) {
+//                    return R.error("娌℃湁鎵惧埌璇ュ簱浣�="+taskWrk.getOriginTargetPoint());
+//                }
+//                locMast.setLocSts("F");
+//                locMastService.updateById(locMast);
+//                //鐩爣搴撲綅
+//                locMast = locMastService.selectByLocNo(taskWrk.getOriginStartPoint());
+//                if (locMast == null) {
+//                    return R.error("娌℃湁鎵惧埌璇ュ簱浣�="+taskWrk.getOriginStartPoint());
+//                }
+//                locMast.setLocSts("0");
+//                locMastService.updateById(locMast);
+//                return R.ok();
+//
+        }
+        if(taskWrkService.updateById(taskWrk)){
+            return R.ok();
+        }else {
+            return R.error("RCS浠诲姟涓婃姤瀹屾垚鏇存柊WCS浠诲姟鐘舵�佸け璐�"+taskWrk);
+        }
+
+    }
 }

--
Gitblit v1.9.1