From fcc24525fba4cbc27b0965bf18440efc38ad9150 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期一, 12 五月 2025 17:07:31 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/TaskLogScheduler.java           |    3 
 src/main/java/com/zy/core/model/CrnSlave.java                  |   12 ++++
 src/main/java/com/zy/asrs/controller/RgvController.java        |   22 +-----
 src/main/java/com/zy/asrs/entity/TaskWrk.java                  |    2 
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java    |   83 +++++++++++++++++++++------
 src/main/java/com/zy/asrs/controller/TaskWrkController.java    |   17 +++--
 src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java |    8 ++
 src/main/resources/application.yml                             |    2 
 src/main/webapp/views/deviceOperate/rgvOperate.html            |    5 -
 9 files changed, 102 insertions(+), 52 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java
index 4dca465..759e453 100644
--- a/src/main/java/com/zy/asrs/controller/RgvController.java
+++ b/src/main/java/com/zy/asrs/controller/RgvController.java
@@ -76,7 +76,7 @@
     }
 
     @PostMapping("/run/del")//Take  Put  Walk
-    @ManagerAuth(memo = "灏忚溅琛岃蛋")
+    @ManagerAuth(memo = "娓呯┖浠诲姟")
     public R rgvRunDel(@RequestParam(defaultValue = "0")  Integer rgvNo
     ) {
         if (rgvNo==null || rgvNo==0){
@@ -101,15 +101,12 @@
     @PostMapping("/run/walk")//Take  Put  Walk
     @ManagerAuth(memo = "灏忚溅琛岃蛋")
     public R rgvRunWalk(@RequestParam(defaultValue = "0")  Integer rgvNo,
-                            @RequestParam(defaultValue = "0")  Integer taskNo,
+                            @RequestParam(defaultValue = "9999")  Integer taskNo,
                             @RequestParam(defaultValue = "0")  Integer rgvStaNoPut,
                             @RequestParam(defaultValue = "0")  Long rgvPosDestination
     ) {
         if (rgvNo==null || rgvNo==0){
             return R.error("璇烽�夋嫨灏忚溅");
-        }
-        if (taskNo==null || taskNo==0){
-            return R.error("浣滀笟鍙疯濉啓");
         }
         if ((rgvStaNoPut == null || rgvStaNoPut == 0) && (rgvPosDestination==null || rgvPosDestination==0L)){
             return R.error("鐩爣绔欑偣璇峰~鍐�");
@@ -149,15 +146,12 @@
     @PostMapping("/run/put")//Take  Put  Walk
     @ManagerAuth(memo = "灏忚溅鏀捐揣")
     public R rgvPutWalk(@RequestParam(defaultValue = "0")  Integer rgvNo,
-                        @RequestParam(defaultValue = "0")  Integer taskNo,
+                        @RequestParam(defaultValue = "9999")  Integer taskNo,
                         @RequestParam(defaultValue = "0")  Integer rgvStaNoPut,
                         @RequestParam(defaultValue = "0")  Long rgvPosDestination
     ) {
         if (rgvNo==null || rgvNo==0){
             return R.error("璇烽�夋嫨灏忚溅");
-        }
-        if (taskNo==null || taskNo==0){
-            return R.error("浣滀笟鍙疯濉啓");
         }
         if (rgvStaNoPut == null || rgvStaNoPut == 0){
             return R.error("鐩爣绔欑偣璇峰~鍐�");
@@ -193,15 +187,12 @@
     @PostMapping("/run/take")//Take  Put  Walk
     @ManagerAuth(memo = "灏忚溅鍙栬揣")
     public R rgvTakeWalk(@RequestParam(defaultValue = "0") Integer rgvNo,
-                        @RequestParam(defaultValue = "0") Integer taskNo,
+                        @RequestParam(defaultValue = "9999") Integer taskNo,
                         @RequestParam(defaultValue = "0") Integer rgvStaNoTake,
                         @RequestParam(defaultValue = "0") Long rgvPosDestination
     ) {
         if (rgvNo==null || rgvNo==0){
             return R.error("璇烽�夋嫨灏忚溅");
-        }
-        if (taskNo==null || taskNo==0){
-            return R.error("浣滀笟鍙疯濉啓");
         }
         if (rgvStaNoTake == null || rgvStaNoTake == 0){
             return R.error("鍙栬揣绔欑偣璇峰~鍐�");
@@ -236,16 +227,13 @@
     @PostMapping("/run/TakeAndPut")//Take  Put  Walk
     @ManagerAuth(memo = "灏忚溅鍙栬揣")
     public R rgvTakeAndPut(@RequestParam(defaultValue = "0") Integer rgvNo,
-                         @RequestParam(defaultValue = "0") Integer taskNo,
+                         @RequestParam(defaultValue = "9999") Integer taskNo,
                          @RequestParam(defaultValue = "0") Integer rgvStaNoTake,
                          @RequestParam(defaultValue = "0") Integer rgvStaNoPut,
                          @RequestParam(defaultValue = "0") Long rgvPosDestination
     ) {
         if (rgvNo==null || rgvNo==0){
             return R.error("璇烽�夋嫨灏忚溅");
-        }
-        if (taskNo==null || taskNo==0){
-            return R.error("浣滀笟鍙疯濉啓");
         }
         if (rgvStaNoTake == null || rgvStaNoTake == 0){
             return R.error("鍙栬揣绔欑偣璇峰~鍐�");
diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
index a8b9f79..d0f9338 100644
--- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
@@ -23,6 +23,7 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
+import java.time.LocalDateTime;
 import java.util.*;
 
 @RestController
@@ -263,10 +264,12 @@
         try{
             HashMap<String, Object> headParam = new HashMap<>();
             headParam.put("taskNo",taskWrk.getTaskNo());
-            headParam.put("status",taskWrk.getStatus());
+            headParam.put("taskStatus",taskWrk.getStatus());
             headParam.put("ioType",taskWrk.getIoTypeWms());
-            headParam.put("barcode",taskWrk.getBarcode());
-//            headParam.put("reportTime",new Date());
+            headParam.put("barCode",taskWrk.getBarcode());
+            headParam.put("reportTime", LocalDateTime.now());
+            headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
             log.info("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms={}", taskWrk);
             response = new HttpHandler.Builder()
                     // .setHeaders(headParam)
@@ -322,10 +325,12 @@
         try{
             HashMap<String, Object> headParam = new HashMap<>();
             headParam.put("taskNo",taskWrk.getTaskNo());
-            headParam.put("status",taskWrk.getStatus());
+            headParam.put("taskStatus",taskWrk.getStatus());
             headParam.put("ioType",taskWrk.getIoTypeWms());
-            headParam.put("barcode",taskWrk.getBarcode());
-//            headParam.put("reportTime",new Date());
+            headParam.put("barCode",taskWrk.getBarcode());
+            headParam.put("reportTime", LocalDateTime.now());
+            headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
 
             log.info("wcs鎵嬪姩鍙栨秷浠诲姟涓婃姤wm={}", taskWrk);
             response = new HttpHandler.Builder()
diff --git a/src/main/java/com/zy/asrs/entity/TaskWrk.java b/src/main/java/com/zy/asrs/entity/TaskWrk.java
index 34c077c..9aa5f1d 100644
--- a/src/main/java/com/zy/asrs/entity/TaskWrk.java
+++ b/src/main/java/com/zy/asrs/entity/TaskWrk.java
@@ -110,7 +110,7 @@
      */
     @ApiModelProperty(value= "閲嶉噺")
     @TableField("SC_WEIGHT")
-    private Integer scWeight;
+    private Integer scWeight = 0;
 
     /**
      * 淇敼浜哄憳
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 3559858..278627a 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -38,6 +38,7 @@
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.io.IOException;
+import java.time.LocalDateTime;
 import java.util.*;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.stream.Collectors;
@@ -653,13 +654,17 @@
                 continue;
             }
 
+            CrnSlave crnSlave = new CrnSlave(crn);
+
             if (!crn.getId().equals(crnProtocol.getLaneNo())) {
                 for (CrnSlave crnOther : slaveProperties.getCrn()) {
                     if (crnOther.getId().equals(crnProtocol.getLaneNo())) {
-                        crn.updateCrnInStn(crnOther);
+                        crnSlave.updateCrnInStn(crnOther);
                     }
                 }
             }
+
+            crn = crnSlave;
 
             // 搴撲綅绉昏浆
             this.locToLoc(crn, crnProtocol);
@@ -807,10 +812,13 @@
                     }
                     try {
                         HashMap<String, Object> headParam = new HashMap<>();
-                        headParam.put("taskNo", taskWrk.getTaskNo());
-                        headParam.put("status", taskWrk.getStatus());
-                        headParam.put("ioType", taskWrk.getIoTypeWms());
-                        headParam.put("barcode", taskWrk.getBarcode());
+                        headParam.put("taskNo",taskWrk.getTaskNo());
+                        headParam.put("taskStatus",taskWrk.getStatus());
+                        headParam.put("ioType",taskWrk.getIoTypeWms());
+                        headParam.put("barCode",taskWrk.getBarcode());
+                        headParam.put("reportTime", LocalDateTime.now());
+                        headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
                         String response;
                         response = new HttpHandler.Builder()
                                 // .setHeaders(headParam)
@@ -927,10 +935,13 @@
                             }
                             try {
                                 HashMap<String, Object> headParam = new HashMap<>();
-                                headParam.put("taskNo", taskWrk.getTaskNo());
-                                headParam.put("status", taskWrk.getStatus());
-                                headParam.put("ioType", taskWrk.getIoTypeWms());
-                                headParam.put("barcode", taskWrk.getBarcode());
+                                headParam.put("taskNo",taskWrk.getTaskNo());
+                                headParam.put("taskStatus",taskWrk.getStatus());
+                                headParam.put("ioType",taskWrk.getIoTypeWms());
+                                headParam.put("barCode",taskWrk.getBarcode());
+                                headParam.put("reportTime", LocalDateTime.now());
+                                headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
                                 String response;
                                 response = new HttpHandler.Builder()
                                         // .setHeaders(headParam)
@@ -1031,10 +1042,13 @@
                     }
                     try {
                         HashMap<String, Object> headParam = new HashMap<>();
-                        headParam.put("taskNo", taskWrk.getTaskNo());
-                        headParam.put("status", taskWrk.getStatus());
-                        headParam.put("ioType", taskWrk.getIoTypeWms());
-                        headParam.put("barcode", taskWrk.getBarcode());
+                        headParam.put("taskNo",taskWrk.getTaskNo());
+                        headParam.put("taskStatus",taskWrk.getStatus());
+                        headParam.put("ioType",taskWrk.getIoTypeWms());
+                        headParam.put("barCode",taskWrk.getBarcode());
+                        headParam.put("reportTime", LocalDateTime.now());
+                        headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
                         String response;
                         response = new HttpHandler.Builder()
                                 // .setHeaders(headParam)
@@ -1145,10 +1159,13 @@
 
                     try {
                         HashMap<String, Object> headParam = new HashMap<>();
-                        headParam.put("taskNo", taskWrk.getTaskNo());
-                        headParam.put("status", taskWrk.getStatus());
-                        headParam.put("ioType", taskWrk.getIoTypeWms());
-                        headParam.put("barcode", taskWrk.getBarcode());
+                        headParam.put("taskNo",taskWrk.getTaskNo());
+                        headParam.put("taskStatus",taskWrk.getStatus());
+                        headParam.put("ioType",taskWrk.getIoTypeWms());
+                        headParam.put("barCode",taskWrk.getBarcode());
+                        headParam.put("reportTime", LocalDateTime.now());
+                        headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
                         String response;
                         log.error("wcs瀹岀粨浠诲姟涓婃姤wms==銆�", headParam);
 
@@ -1372,6 +1389,32 @@
         }
         return true;
     }
+    public boolean rgvOtherIDLEOther(RgvSlave slave) {
+        RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(slave.getOtherId());
+        RgvTaskProtocol rgvTaskProtocol = RgvTaskCache.getRgvStatus(slave.getOtherId());
+
+        if (rgvProtocol == null || rgvTaskProtocol == null) {
+            return false;
+        }
+        if (!rgvProtocol.getModeType().equals(RgvModeType.AUTO) || rgvProtocol.getRgvPos().equals(0L) || rgvTaskProtocol.getAvoid() == -1
+                || (!rgvProtocol.getStatusType().equals(RgvStatusType.IDLE) && !rgvProtocol.getStatusType().equals(RgvStatusType.ROAM))) {
+            return false;
+        }
+        RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(slave.getId());
+        RgvTaskProtocol rgvTaskProtocolOther = RgvTaskCache.getRgvStatus(slave.getId());
+
+        if (rgvProtocolOther == null) {
+            return true;
+        }
+        if (rgvProtocolOther.statusEnable) {
+            if (rgvProtocolOther.getModeType().equals(RgvModeType.AUTO)
+                    && rgvProtocolOther.getStatusType().equals(RgvStatusType.IDLE)
+                    && rgvProtocolOther.getLoaded()==0) {
+                return false;
+            }
+        }
+        return true;
+    }
     public boolean rgvOtherIDLE(RgvSlave slave) {
         RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(slave.getId());
         RgvTaskProtocol rgvTaskProtocol = RgvTaskCache.getRgvStatus(slave.getId());
@@ -1509,8 +1552,10 @@
                         }
 
                         if (!sign){
-                            if (!rgvOtherIDLE(rgvSlave)){
-                                sign=true;
+                            if (rgvOtherIDLEOther(rgvSlave)){
+                                if (!rgvOtherIDLE(rgvSlave)){
+                                    sign=true;
+                                }
                             }
                         }
 
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 8f1aeac..40c5155 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
@@ -34,6 +34,7 @@
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -143,9 +144,12 @@
             try{
                 HashMap<String, Object> headParam = new HashMap<>();
                 headParam.put("taskNo",taskWrk.getTaskNo());
-                headParam.put("status",taskWrk.getStatus());
+                headParam.put("taskStatus",taskWrk.getStatus());
                 headParam.put("ioType",taskWrk.getIoTypeWms());
-                headParam.put("barcode",taskWrk.getBarcode());
+                headParam.put("barCode",taskWrk.getBarcode());
+                headParam.put("reportTime", LocalDateTime.now());
+                headParam.put("weight",taskWrk.getScWeight().doubleValue());
+
 //                headParam.put("reportTime",new Date());
                 String response;
                 response = new HttpHandler.Builder()
diff --git a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
index c9c05e4..d4ea5de 100644
--- a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
@@ -19,6 +19,7 @@
 import org.springframework.stereotype.Component;
 
 import java.io.IOException;
+import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -65,7 +66,7 @@
                 map.put("taskStatus",taskWrk.getStatus());
                 map.put("ioType",taskWrk.getIoTypeWms());
                 map.put("barCode",taskWrk.getBarcode());
-                map.put("reportTime",new Date());
+                map.put("reportTime", LocalDateTime.now());
                 map.put("weight",taskWrk.getScWeight().doubleValue());
                 response = new HttpHandler.Builder()
                         .setUri(wmsUrl)
diff --git a/src/main/java/com/zy/core/model/CrnSlave.java b/src/main/java/com/zy/core/model/CrnSlave.java
index d7d8d68..40e37d3 100644
--- a/src/main/java/com/zy/core/model/CrnSlave.java
+++ b/src/main/java/com/zy/core/model/CrnSlave.java
@@ -51,6 +51,18 @@
 
     }
 
+    public CrnSlave() {
+    }
+
+    public CrnSlave(CrnSlave crnSlave) {
+        this.rack = crnSlave.getRack();
+        this.slot = crnSlave.getSlot();
+        this.offset = crnSlave.getOffset();
+        this.demo = crnSlave.getDemo();
+        this.crnInStn = crnSlave.getCrnInStn();
+        this.crnOutStn = crnSlave.getCrnOutStn();
+    }
+
     public void updateCrnInStn(CrnSlave crnSlave){
         crnInStn = crnSlave.getCrnInStn();
         crnOutStn = crnSlave.getCrnOutStn();
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 67c899a..df63c56 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -66,7 +66,7 @@
   #url: 10.32.53.195:8080
   # WMS绯荤粺ip
   #  url: 10.210.157.109:8090
-  url: 27.172.2.125:9027
+  url: 27.172.2.107:9027
   # 鍏ュ簱浠诲姟鐢宠鎺ュ彛
   #inboundTaskApplyPath: api/InterFace/inboundTaskApply
   inboundTaskApplyPath: sugood/inboundTaskApply
diff --git a/src/main/webapp/views/deviceOperate/rgvOperate.html b/src/main/webapp/views/deviceOperate/rgvOperate.html
index 4324cb7..be2464d 100644
--- a/src/main/webapp/views/deviceOperate/rgvOperate.html
+++ b/src/main/webapp/views/deviceOperate/rgvOperate.html
@@ -41,9 +41,6 @@
 					</div>
 					<div>
 						<el-form :model="formParam" label-position="top" :inline="true" class="demo-form-inline">
-							<el-form-item label="宸ヤ綔鍙�">
-								<el-input v-model="formParam.taskNo" placeholder="宸ヤ綔鍙�"></el-input>
-							</el-form-item>
 							<el-form-item label="鐩爣瀹氫綅缃�">
 								<el-input v-model="formParam.rgvPosDestination" placeholder="鐩爣瀹氫綅缃�"></el-input>
 							</el-form-item>
@@ -106,7 +103,6 @@
 				currentIndex: null,
 				formParam: {
 					rgvNo: 0,
-					taskNo: 0,
 					rgvStaNoTake: 0,
 					rgvStaNoPut: 0,
 					rgvPosDestination: 0
@@ -133,7 +129,6 @@
 					this.currentTitle = row.rgvNo + "灏忚溅"
 					
 					this.formParam.rgvNo = row.rgvNo
-					this.formParam.taskNo = row.taskNo
 					this.formParam.rgvStaNoTake = row.rgvStaNoTake
 					this.formParam.rgvStaNoPut = row.rgvStaNoPut
 					this.formParam.rgvPosDestination = row.rgvPosDestination

--
Gitblit v1.9.1