From 138e8078bb92f28fd135c9ce0301f4b71164dd9a Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期日, 28 十二月 2025 14:55:48 +0800
Subject: [PATCH] 输送线和CTU安全交互

---
 src/main/java/com/zy/asrs/task/handler/JlerHandler.java           |   15 ++++++-
 src/main/resources/mapper/WrkMastLogMapper.xml                    |    2 
 src/main/java/com/zy/asrs/service/impl/RcsServiceImpl.java        |   15 +++++++
 src/main/java/com/zy/asrs/entity/WrkMastLog.java                  |    8 ++--
 src/main/resources/application-dev.yml                            |    2 
 src/main/java/com/zy/asrs/service/RcsService.java                 |    5 ++
 src/main/java/com/zy/asrs/service/impl/WrkMastLogServiceImpl.java |    2 
 src/main/java/com/zy/asrs/entity/rcs/SiteBind.java                |   46 +++++++++++++++++++++++
 8 files changed, 85 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/WrkMastLog.java b/src/main/java/com/zy/asrs/entity/WrkMastLog.java
index 820f59d..e4d3c58 100644
--- a/src/main/java/com/zy/asrs/entity/WrkMastLog.java
+++ b/src/main/java/com/zy/asrs/entity/WrkMastLog.java
@@ -29,8 +29,8 @@
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
-    @ApiModelProperty("鏃ュ織ID")
-    private Long logId;
+//    @ApiModelProperty("鏃ュ織ID")
+//    private Long logId;
 
     /**
      * 宸ヤ綔鍙�
@@ -273,8 +273,8 @@
     private String manuType;
 
     @ApiModelProperty(value = "")
-    @TableField("memo_m")
-    private String memoM;
+    @TableField("memo")
+    private String memo;
 
     @ApiModelProperty(value = "")
     @TableField("sc_weight")
diff --git a/src/main/java/com/zy/asrs/entity/rcs/SiteBind.java b/src/main/java/com/zy/asrs/entity/rcs/SiteBind.java
new file mode 100644
index 0000000..ea8e16d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/rcs/SiteBind.java
@@ -0,0 +1,46 @@
+package com.zy.asrs.entity.rcs;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author pang.jiabao
+ * @description 杞藉叿涓庣珯鐐圭粦瀹氭帴鍙�
+ * @createDate 2025/12/27 14:36
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SiteBind {
+
+    /**
+     * 瀛樺偍瀵硅薄绉嶇被绫诲瀷
+     */
+    private String slotCategory;
+
+    /**
+     * 绔欑偣缂栧彿/绔欑偣鍒悕
+     */
+    private String slotCode;
+
+    /**
+     * 鎼繍瀵硅薄绉嶇被绫诲瀷
+     */
+    private String carrierCategory;
+
+    /**
+     * 杞藉叿缂栧彿/杞藉叿鍒悕
+     */
+    private String carrierCode;
+
+    /**
+     * 缁戝畾瑙g粦鐨勫彉鏇淬��
+     * 鍥哄畾鏋氫妇鍊硷細
+     * BIND
+     * 缁戝畾
+     * UNBIND
+     * 瑙g粦
+     */
+    private String invoke;
+}
diff --git a/src/main/java/com/zy/asrs/service/RcsService.java b/src/main/java/com/zy/asrs/service/RcsService.java
index fdaebe2..c4dd4c8 100644
--- a/src/main/java/com/zy/asrs/service/RcsService.java
+++ b/src/main/java/com/zy/asrs/service/RcsService.java
@@ -63,4 +63,9 @@
      * @return
      */
     JSONObject hxApplyInLine(TransParent apply);
+
+    /**
+     * 2.1.12 瀛樺偍瀵硅薄涓庢惉杩愬璞$粦瀹氳В缁戞帴鍙�
+     */
+    RcsReturn siteBind(SiteBind siteBind);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/RcsServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/RcsServiceImpl.java
index 12af9a8..f3dd197 100644
--- a/src/main/java/com/zy/asrs/service/impl/RcsServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/RcsServiceImpl.java
@@ -320,6 +320,7 @@
         Date now = new Date();
 
         try {
+            // 鏂欑鏈哄櫒浜轰换鍔℃墽琛岀姸鎬佸弽棣堝埌wcs锛岃繖閲屼笉璋冪敤
             if (singleRobotCode.equals("14") || singleRobotCode.equals("15")) { // 涓ゅ彴CTU搴撴満鍣ㄤ汉缂栧彿
                 WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("task_no", robotTaskCode));
                 if(wrkMast != null) {
@@ -685,6 +686,20 @@
         return result;
     }
 
+    @Override
+    public RcsReturn siteBind(SiteBind siteBind) {
+        RcsReturn rcsReturn = new RcsReturn();
+        String url = HIK_URL + "api/robot/controller/site/bind";
+        String response = sendPost(url, JSONObject.toJSONString(siteBind));
+        if (!StringUtils.isEmpty(response) && response.contains("code")){
+            rcsReturn = JSONObject.parseObject(response, RcsReturn.class);
+        } else {
+            rcsReturn.setCode("ERROR");
+            rcsReturn.setMessage("璋冪敤缁戝畾鎺ュ彛RCS鏃犺繑鍥�");
+        }
+        return rcsReturn;
+    }
+
     // endregion
 
     // region httpUtil
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastLogServiceImpl.java
index 0321a08..1951327 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkMastLogServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkMastLogServiceImpl.java
@@ -36,7 +36,7 @@
         }
         WrkMastLog mastLog = new WrkMastLog();
         BeanUtils.copyProperties(mast, mastLog);
-        mastLog.setLogId(mast.getId());
+//        mastLog.setLogId(mast.getId());
 
         if (!wrkMastLogService.insert(mastLog)) {
             throw new CoolException("浠诲姟鏃ュ織淇濆瓨澶辫触锛侊紒");
diff --git a/src/main/java/com/zy/asrs/task/handler/JlerHandler.java b/src/main/java/com/zy/asrs/task/handler/JlerHandler.java
index e5607b1..ccbab00 100644
--- a/src/main/java/com/zy/asrs/task/handler/JlerHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/JlerHandler.java
@@ -9,6 +9,7 @@
 import com.zy.asrs.entity.rcs.RcsReturn;
 import com.zy.asrs.entity.rcs.RcsTaskSubmit;
 import com.zy.asrs.entity.rcs.RcsTaskTargetRoute;
+import com.zy.asrs.entity.rcs.SiteBind;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.OrderInAndOutUtil;
 import com.zy.common.model.LocDto;
@@ -65,6 +66,14 @@
     @Transactional
     public void callAgvToWarehouse(WrkMast wrkMast) {
 
+        // 鍏堢粦瀹氳浇鍏�
+        SiteBind siteBind = new SiteBind("BIN","RS00002A01011","BOX",wrkMast.getBarcode(),"BIND");
+        RcsReturn carrierBindReturn = rcsService.siteBind(siteBind);
+        if(!carrierBindReturn.getCode().equals("SUCCESS")) {
+            log.error("鍏ュ簱缁戝畾杞藉叿澶辫触锛歿}",JSONObject.toJSONString(carrierBindReturn));
+            return;
+        }
+
         // 涓嬪彂缁橰CS
         RcsTaskSubmit rcsTaskSubmit = new RcsTaskSubmit();
         // 妯℃澘鍚�
@@ -95,9 +104,9 @@
             wrkMast.setCrnStrTime(now);
             wrkMast.setTaskNo(rcsTaskSubmit.getRobotTaskCode());
             wrkMastService.updateById(wrkMast);
-            log.info("鍑哄簱缁欐枡绠辨満鍣ㄤ汉鍙戦�佸懡浠ゆ垚鍔燂紝宸ヤ綔鍙凤細{}锛屼换鍔″彿锛歿}",wrkMast.getWrkNo(),rcsTaskSubmit.getRobotTaskCode());
+            log.info("鍏ュ簱缁欐枡绠辨満鍣ㄤ汉鍙戦�佸懡浠ゆ垚鍔燂紝宸ヤ綔鍙凤細{}锛屼换鍔″彿锛歿}",wrkMast.getWrkNo(),rcsTaskSubmit.getRobotTaskCode());
         } else {
-            log.error("鍑哄簱缁欐枡绠辨満鍣ㄤ汉鍙戦�佸懡浠ゅけ璐ワ紝宸ヤ綔鍙凤細{}锛屼换鍔″彿锛歿}",wrkMast.getWrkNo(),rcsTaskSubmit.getRobotTaskCode());
+            log.error("鍏ュ簱缁欐枡绠辨満鍣ㄤ汉鍙戦�佸懡浠ゅけ璐ワ紝宸ヤ綔鍙凤細{}锛屼换鍔″彿锛歿}",wrkMast.getWrkNo(),rcsTaskSubmit.getRobotTaskCode());
         }
     }
 
@@ -271,7 +280,7 @@
         // 涓嬪彂缁橰CS
         RcsTaskSubmit rcsTaskSubmit = new RcsTaskSubmit();
         // 妯℃澘鍚�
-        rcsTaskSubmit.setTaskType("CTU2");
+        rcsTaskSubmit.setTaskType("CTU4");
         rcsTaskSubmit.setRobotTaskCode(String.valueOf(new Date().getTime()));
         rcsTaskSubmit.setInitPriority(10);  //榛樿10
         List<RcsTaskTargetRoute> targetRouteList = new ArrayList<>();
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 50243e9..27054ef 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -58,7 +58,7 @@
 
 # 涓嬩綅鏈洪厤缃�
 wcs-slave:
-  url: http://127.0.0.1:9090/djwcs
+  url: http://127.0.0.1:9091/djwcs
   # 鍙屾繁
   doubleDeep: true
   # 鍙屾繁搴撲綅鎺掑彿
diff --git a/src/main/resources/mapper/WrkMastLogMapper.xml b/src/main/resources/mapper/WrkMastLogMapper.xml
index 8086afb..8a91989 100644
--- a/src/main/resources/mapper/WrkMastLogMapper.xml
+++ b/src/main/resources/mapper/WrkMastLogMapper.xml
@@ -51,7 +51,7 @@
         <result column="error_memo" property="errorMemo" />
         <result column="ctn_kind" property="ctnKind" />
         <result column="manu_type" property="manuType" />
-        <result column="memo_m" property="memoM" />
+        <result column="memo" property="memo" />
         <result column="sc_weight" property="scWeight" />
         <result column="log_mk" property="logMk" />
         <result column="log_err_time" property="logErrTime" />

--
Gitblit v1.9.1