From a37eb3393b65933105a6f23a1713a2b14b835d16 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期五, 23 五月 2025 12:53:27 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/ForkLiftController.java |   46 +++++++++++++++++++++++++++++++---------------
 1 files changed, 31 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/ForkLiftController.java b/src/main/java/com/zy/asrs/controller/ForkLiftController.java
index 95625b5..747abf8 100644
--- a/src/main/java/com/zy/asrs/controller/ForkLiftController.java
+++ b/src/main/java/com/zy/asrs/controller/ForkLiftController.java
@@ -12,22 +12,15 @@
 import com.zy.asrs.entity.BasLift;
 import com.zy.asrs.service.BasLiftService;
 import com.zy.common.service.CommonService;
-import com.zy.common.utils.ForkLiftUtils;
 import com.zy.common.utils.RedisUtil;
 import com.zy.core.action.ForkLiftAction;
-import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.OutputQueue;
 import com.zy.core.cache.SlaveConnection;
-import com.zy.core.enums.ForkLiftProtocolStatusType;
-import com.zy.core.enums.ForkLiftTaskModeType;
-import com.zy.core.enums.RedisKeyType;
-import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.*;
 import com.zy.core.model.ForkLiftSlave;
-import com.zy.core.model.LiftSlave;
-import com.zy.core.model.Task;
 import com.zy.core.model.command.*;
 import com.zy.core.model.protocol.ForkLiftProtocol;
-import com.zy.core.model.protocol.LiftStaProtocol;
+import com.zy.core.model.protocol.ForkLiftStaProtocol;
 import com.zy.core.properties.SlaveProperties;
 import com.zy.core.thread.ForkLiftThread;
 import lombok.extern.slf4j.Slf4j;
@@ -75,6 +68,8 @@
                 continue;
             }
             JSONObject data = JSON.parseObject(JSON.toJSONString(forkLiftProtocol));
+            List<ForkLiftStaProtocol> forkLiftStaProtocols = forkLiftThread.getForkLiftStaProtocols();
+            data.put("forkLiftStaProtocols", forkLiftStaProtocols);
             baseObj.putAll(data);
         }
         return R.ok().add(list);
@@ -99,8 +94,9 @@
                 continue;
             }
 
-            vo.setWorkNo(forkLiftProtocol.getTaskNo().intValue());//浠诲姟鍙�
+            vo.setWorkNo(forkLiftProtocol.getTaskNo());//浠诲姟鍙�
             vo.setPakMk(forkLiftProtocol.getPakMk()?"Y" : "N");    // 浣滀笟鏍囪
+            vo.setForkLiftStaProtocols(forkLiftThread.getForkLiftStaProtocols());
         }
         return R.ok().add(list);
     }
@@ -160,9 +156,7 @@
     @PostMapping("/detl/update")
     @ManagerAuth(memo = "淇敼鏁版嵁")
     public R liftUpdate(@RequestParam Integer liftNo,
-                        @RequestParam Short workNo,
-                        @RequestParam String pakMk,
-                        @RequestParam Integer token) {
+                        @RequestParam Short workNo) {
         ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, liftNo);
         if (forkLiftThread == null) {
             return R.error("plc宸叉帀绾�");
@@ -277,7 +271,7 @@
 
         if (param.getLiftTaskMode() == 1) {
             //灏忚溅鎹㈠眰
-            int workNo = commonService.getWorkNo(99);//鑾峰彇浠诲姟鍙�
+            int workNo = commonService.getWorkNo(WrkIoType.MANUAL.id);//鑾峰彇浠诲姟鍙�
 
             Integer startSta = param.getSourceStaNo();
             Integer targetSta = param.getStaNo();
@@ -299,7 +293,7 @@
             return R.ok();
         } else if (param.getLiftTaskMode() == 2) {
             //绉诲姩鎵樼洏
-            int workNo = commonService.getWorkNo(99);//鑾峰彇浠诲姟鍙�
+            int workNo = commonService.getWorkNo(WrkIoType.MANUAL.id);//鑾峰彇浠诲姟鍙�
 
             Integer startSta = param.getSourceStaNo();
             Integer targetSta = param.getStaNo();
@@ -320,6 +314,28 @@
             forkLiftAction.assignWork(forkLiftProtocol.getLiftNo(), assignCommand);
             return R.ok();
         } else if (param.getLiftTaskMode() == 3) {
+            //绉诲姩
+            int workNo = commonService.getWorkNo(WrkIoType.MANUAL.id);//鑾峰彇浠诲姟鍙�
+
+            Integer startSta = param.getSourceStaNo();
+            Integer targetSta = param.getStaNo();
+
+            //鑾峰彇鎻愬崌鏈哄懡浠�
+            List<ForkLiftCommand> liftCommand = forkLiftThread.getMoveCommand(workNo, startSta, targetSta);
+            ArrayList<ForkLiftCommand> commands = new ArrayList<>();
+            commands.addAll(liftCommand);
+
+            //鎻愪氦鍒扮嚎绋嬪幓宸ヤ綔
+            LiftAssignCommand assignCommand = new LiftAssignCommand();
+            assignCommand.setCommands(commands);
+            assignCommand.setLiftNo(forkLiftProtocol.getLiftNo().shortValue());
+            assignCommand.setTaskNo((short) workNo);
+            assignCommand.setAuto(false);//鎵嬪姩妯″紡
+            assignCommand.setTaskMode(ForkLiftTaskModeType.MOVE.id.shortValue());
+
+            forkLiftAction.assignWork(forkLiftProtocol.getLiftNo(), assignCommand);
+            return R.ok();
+        } else if (param.getLiftTaskMode() == 4) {
             //浠诲姟纭
             forkLiftThread.reset();
             return R.ok();

--
Gitblit v1.9.1