From dbae31a7a7cd59048ada9b51fe8faff545324c59 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 15 三月 2024 16:02:53 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/TaskWrkController.java |   94 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 81 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
index dba67fe..0bb2991 100644
--- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
@@ -8,9 +8,11 @@
 import com.core.common.DateUtils;
 import com.zy.asrs.domain.enums.TaskStatusType;
 import com.zy.asrs.entity.CommandInfo;
+import com.zy.asrs.entity.LocMast;
 import com.zy.asrs.entity.TaskWrk;
 import com.zy.asrs.entity.param.TaskOverToWms;
 import com.zy.asrs.service.CommandInfoService;
+import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.service.TaskWrkService;
 import com.core.annotations.ManagerAuth;
 import com.core.common.BaseRes;
@@ -29,6 +31,8 @@
 import java.net.UnknownHostException;
 import java.util.*;
 
+import static com.zy.asrs.entity.param.TaskStatusFeedbackParam.getTaskType;
+
 @RestController
 @Slf4j
 public class TaskWrkController extends BaseController {
@@ -41,6 +45,8 @@
 
     @Autowired
     private CommandInfoService commandInfoService;
+    @Autowired
+    private LocMastService locMastService;
 
     @RequestMapping(value = "/taskWrk/{wrkNo}/auth")
     @ManagerAuth
@@ -226,11 +232,11 @@
             if (taskWrk == null) {
                 return R.error();
             }
-            if (taskWrk.getStatus().equals(TaskStatusType.COMPLETE.id)) {
+            if (taskWrk.getStatus().equals(TaskStatusType.OVER.id)) {
                 return R.error(taskWrk.getTaskNo() + "宸插畬缁�");
             }
             Date now = new Date();
-            taskWrk.setStatus(TaskStatusType.COMPLETE.id);
+            taskWrk.setStatus(TaskStatusType.OVER.id);
             taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
             try{
                 taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
@@ -239,6 +245,25 @@
             }
             taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
             taskWrkService.updateById(taskWrk);
+
+
+            if (taskWrk.getIoType() == 1) {
+                //鏇存柊搴撲綅鐘舵��
+                LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint());
+                locMast.setLocSts("Z");//F.鍦ㄥ簱
+                locMast.setBarcode(taskWrk.getBarcode());//鎵樼洏鐮�
+                locMast.setModiTime(now);
+                locMast.setModiUser(9999L);
+                locMastService.updateById(locMast);
+            } else if (taskWrk.getIoType() == 2) {
+                //鏇存柊搴撲綅鐘舵��
+                LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint());
+                locMast.setLocSts("K");//O.绌哄簱浣�
+                locMast.setBarcode("");//鎵樼洏鐮�
+                locMast.setModiTime(now);
+                locMast.setModiUser(9999L);
+                locMastService.updateById(locMast);
+            }
 
 
             if (taskWrkService.saveToHistory(taskWrk.getTaskNo()) > 0) {
@@ -265,22 +290,65 @@
         if (taskWrk == null) {
             return R.error();
         }
-        if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) {
-            return R.error(taskWrk.getTaskNo() + "宸茶鍙栨秷");
+        String wmsCancelledtask = toWmsCancelledtask(taskWrk);
+        JSONObject jsonObject = JSON.parseObject(wmsCancelledtask);
+        if (Cools.isEmpty(jsonObject)){
+            return R.error("瓒呮椂鎴栨湭鐭ラ敊璇�");
         }
-        Date now = new Date();
-        taskWrk.setStatus(TaskStatusType.CANCEL.id);
-        taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
-        try{
-            taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
-        }catch (Exception e){
-            taskWrk.setModiUser(9999L);//鎿嶄綔鍛�
+        if (jsonObject.getInteger("code").equals(200)){
+            if (!taskWrkService.delete(new EntityWrapper<TaskWrk>().eq("task_no",taskNo))){
+                return R.error("鍒犻櫎浠诲姟澶辫触");
+            }
+        }else if (jsonObject.getInteger("code").equals(500)){
+            return R.error(jsonObject.get("msg").toString());
+        }else {
+            return R.error("瓒呮椂鎴栨湭鐭ラ敊璇�");
         }
-        taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
-        taskWrkService.updateById(taskWrk);
+
         return R.ok();
     }
 
+    public String toWmsCancelledtask(TaskWrk taskWrk){
+        Map<String, Object> map = new HashMap<>();
+        map.put("x-api-key","7a15b5db-29b6-552c-8cff-0cfec3756da2");
+        TaskOverToWms taskOverToWms = new TaskOverToWms();
+        taskOverToWms.setFeedbackFrom("WCS"); //鏉ユ簮
+        taskOverToWms.setWarehouseId("1688469798893297665"); //浠撳簱鏍囪瘑
+        taskOverToWms.setTaskNo(taskWrk.getTaskNo()); //浠诲姟鍙�
+        taskOverToWms.setTaskType(getTaskType(taskWrk.getIoType())); // 浠诲姟绫诲瀷
+        taskOverToWms.setContainerCode(taskWrk.getBarcode()); // 瀹瑰櫒缂栫爜
+        if (taskWrk.getIoType() ==1 ){
+            taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //璁惧缂栫爜
+            taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //鐩爣搴撲綅
+        }else if (taskWrk.getIoType() ==2){
+            Map<Integer,String> map1 = new HashMap<>();
+            map1.put(102,"J-1101");
+            map1.put(106,"J-1103");
+            map1.put(110,"J-1105");
+            map1.put(114,"J-1107");
+            map1.put(118,"J-1109");
+            map1.put(122,"J-1111");
+            taskOverToWms.setEquipmentCode(map1.get(taskWrk.getTargetPoint())); //璁惧缂栫爜
+            taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); //婧愬簱浣�
+        }
+
+        taskOverToWms.setTaskStatus("cancelled"); //浠诲姟鐘舵��
+        String response = null;
+        try {
+            response = new HttpHandler.Builder()
+                    .setHeaders(map)
+                    .setUri(wmsUrl)
+                    .setPath("wcsManager/wcsInterface/taskStatusFeedback")
+                    .setJson(JSON.toJSONString(taskOverToWms))
+                    .build()
+                    .doPost();
+        }catch (Exception e){
+            log.error("wms杩炴帴澶辫触");
+        }
+        return response;
+    }
+
+
     @PostMapping(value = "/taskWrk/updateCommandStep")
     @ManagerAuth(memo = "鏇存柊姝ュ簭")
     public R updateCommandStep(@RequestParam Integer wrkNo, @RequestParam Integer commandStep) {

--
Gitblit v1.9.1