From 6a02553155f5c12890a611e6fe12b93cc7e75c32 Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期四, 18 十二月 2025 08:59:52 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/entity/result/WrkCancel.java       |   13 ++++
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java  |   53 +++++++++++++++++
 src/main/java/com/zy/asrs/entity/result/WrkPriority.java     |   16 +++++
 src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java |   53 +++++++++++++++++
 src/main/resources/application.yml                           |    2 
 5 files changed, 135 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/result/WrkCancel.java b/src/main/java/com/zy/asrs/entity/result/WrkCancel.java
new file mode 100644
index 0000000..7878b6e
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/result/WrkCancel.java
@@ -0,0 +1,13 @@
+package com.zy.asrs.entity.result;
+
+import lombok.Data;
+
+@Data
+public class WrkCancel {
+
+    /*浠诲姟鍙�*/
+    private String taskId;
+
+    /*鍙栨秷鏃堕棿*/
+    private String msgTime;
+}
diff --git a/src/main/java/com/zy/asrs/entity/result/WrkPriority.java b/src/main/java/com/zy/asrs/entity/result/WrkPriority.java
new file mode 100644
index 0000000..26f9aee
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/result/WrkPriority.java
@@ -0,0 +1,16 @@
+package com.zy.asrs.entity.result;
+
+import lombok.Data;
+
+@Data
+public class WrkPriority {
+
+    /*缁勫彿*/
+    private String taskId;
+
+    /*浼樺厛绾�*/
+    private Integer priorityCode;
+
+    /*璋冩暣鏃堕棿*/
+    private String msgTime;
+}
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 9ef1cd3..5808540 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1,5 +1,7 @@
 package com.zy.asrs.service.impl;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.core.common.BaseRes;
@@ -9,6 +11,7 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.*;
+import com.zy.asrs.entity.result.WrkCancel;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.Utils;
 import com.zy.common.model.*;
@@ -16,6 +19,7 @@
 import com.zy.common.model.enums.WorkNoType;
 import com.zy.common.properties.SlaveProperties;
 import com.zy.common.service.CommonService;
+import com.zy.common.utils.HttpHandler;
 import com.zy.common.web.WcsController;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -23,6 +27,8 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
@@ -75,8 +81,12 @@
     private SlaveProperties slaveProperties;
     @Autowired
     private WaitPakinService waitPakinService;
+    @Autowired
+    private ApiLogService apiLogService;
     @Value("${wcs-slave.cancel}")
     private String cancel;
+    @Value("${wcs-slave.url}")
+    private String url;
 
     @Override
     @Transactional
@@ -1028,7 +1038,48 @@
             throw new CoolException("淇濆瓨鏁版嵁澶辫触");
         }
 
-        //wms鍙栨秷浠诲姟 鍚屾椂璋冪敤wcs浠诲姟鍙栨秷鎺ュ彛閫氱煡wcs todo
+        //wms鍙栨秷浠诲姟 鍚屾椂璋冪敤wcs浠诲姟鍙栨秷鎺ュ彛閫氱煡wcs
+        WrkCancel wrkCancel = new WrkCancel();
+        Date date = new Date();
+        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        wrkCancel.setTaskId(workNo); // 浠诲姟鍙�
+        wrkCancel.setMsgTime(dateFormat.format(date)); // 鍙栨秷鏃堕棿
+
+        String response = "";
+        boolean flag = false;
+        try {
+            response = new HttpHandler.Builder()
+                    .setUri(url)
+                    .setPath(cancel)
+                    .setJson(JSON.toJSONString(wrkCancel))
+                    .build()
+                    .doPost();
+            JSONObject jsonObject = JSON.parseObject(response);
+            if (jsonObject.getInteger("returnStatus") == 0){
+                flag = true;
+            }else {
+                log.error("wms鍙栨秷浠诲姟涓嬪彂wcs澶辫触--->url锛歿}锛況equest锛歿}锛況esponse锛歿}", url+"/"+cancel, JSON.toJSONString(wrkCancel), response);
+                throw new CoolException("wms鍙栨秷浠诲姟涓嬪彂wcs澶辫触");
+            }
+        }catch (Exception e){
+            log.error("fail", e);
+        }finally {
+            try {
+                //淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "wms涓嬪彂浠诲姟缁檞cs",
+                        url+"/"+cancel,
+                        null,
+                        "127.0.0.1",
+                        JSON.toJSONString(wrkCancel),
+                        response,
+                        flag
+                );
+            }catch (Exception e){
+                log.error("",e);
+            }
+        }
+
 
     }
 
diff --git a/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java b/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java
index f92acd1..375f994 100644
--- a/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java
@@ -5,11 +5,11 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.WrkMast;
 import com.zy.asrs.entity.result.WorkIssuedResult;
+import com.zy.asrs.entity.result.WrkPriority;
 import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
-import com.zy.common.constant.MesConstant;
 import com.zy.common.utils.HttpHandler;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -31,6 +31,8 @@
     private String url;
     @Value("${wcs-slave.workIssued}")
     private String workIssued;
+    @Value("${wcs-slave.priority}")
+    private String priority;
     @Value("${wcs-slave.inDevp}")
     private String inDevp;
     @Value("${wcs-slave.outDevp}")
@@ -130,4 +132,53 @@
 
         return null;
     }
+
+    public ReturnT<String> notice(WrkMast wrkMast) {
+        WrkPriority wrkPriority = new WrkPriority();
+        Date date = new Date();
+        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        wrkPriority.setTaskId(wrkMast.getWrkNo().toString()); // 缁勫彿
+        wrkPriority.setPriorityCode(wrkMast.getIoPri().intValue()); // 浼樺厛绾�
+        wrkPriority.setMsgTime(dateFormat.format(date)); // 璋冩暣鏃堕棿
+
+        String response = "";
+        boolean success = false;
+        try {
+            response = new HttpHandler.Builder()
+                    .setUri(url)
+                    .setPath(priority)
+                    .setJson(JSON.toJSONString(wrkPriority))
+                    .build()
+                    .doPost();
+            JSONObject jsonObject = JSON.parseObject(response);
+            if (jsonObject.getInteger("returnStatus").equals(0)) {
+                success = true;
+                wrkMast.setWrkSts(1L);
+                wrkMastService.updateById(wrkMast);
+            } else {
+                log.error("wms涓嬪彂浠诲姟缁檞cs澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", url + "/" + workIssued, JSON.toJSONString(wrkPriority), response);
+                throw new CoolException("wms涓嬪彂浠诲姟缁檞cs澶辫触");
+            }
+        } catch (Exception e) {
+            log.error("fail", e);
+//            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
+        } finally {
+            try {
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "wms涓嬪彂浠诲姟缁檞cs",
+                        url + "/" + workIssued,
+                        null,
+                        "127.0.0.1",
+                        JSON.toJSONString(wrkPriority),
+                        response,
+                        success
+                );
+            } catch (Exception e) {
+                log.error("", e);
+            }
+        }
+        return null;
+    }
 }
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 695147b..8018a6b 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -70,6 +70,8 @@
   locInfo: fromWms/cargoLocationSyn
   #浠诲姟鍙栨秷
   cancel: fromWms/taskCancel
+  #浠诲姟浼樺厛绾ц皟鏁�
+  priority: fromWms/taskPriority
   #鍏ュ簱绔�
   inDevp : 101
   #鍑哄簱绔�

--
Gitblit v1.9.1