From 9372f61dcb41eeb2e09871caefce0f764d6ab021 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 21 六月 2024 15:17:04 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java |  116 ++++++++++------------------------------------------------
 1 files changed, 20 insertions(+), 96 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java
index 230f15c..9d49fb4 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java
@@ -192,7 +192,7 @@
                 if (!liftThread.isLock(new ExecuteSupport() {
                     @Override
                     public Boolean judgement() {
-                        return true;
+                        return true;//鐗涚溂娌℃湁鎻愬崌鏈洪攣锛岀洿鎺ヨ繑鍥瀟rue
                     }
                 })) {
                     return false;
@@ -311,54 +311,24 @@
                 }
 
                 //鍒ゆ柇鎻愬崌鏈烘槸鍚﹁閿佸畾
-                if (liftThread.isLock(new ExecuteSupport() {
+                if (!liftThread.isLock(new ExecuteSupport() {
                     @Override
                     public Boolean judgement() {
                         return false;
                     }
                 })) {
-                    //瑙i攣鎻愬崌鏈�
-                    List<LiftCommand> lockCommand = liftThread.getLockCommand(motion.getTaskNo(), false);//鑾峰彇鎻愬崌鏈鸿В閿佸懡浠�
-
-                    LiftAssignCommand liftAssignCommand = new LiftAssignCommand();
-                    liftAssignCommand.setLiftNo(liftThread.getStatus().getLiftNo());
-                    liftAssignCommand.setTaskNo(motion.getTaskNo());
-                    ArrayList<LiftCommand> list = new ArrayList<>();
-                    list.addAll(lockCommand);
-                    liftAssignCommand.setCommands(list);
-
-                    liftAction.assignWork(liftThread.getDevice(), liftAssignCommand);
-                    return false;//绛夊緟涓嬩竴娆¤疆璇�
-                }
-
-                //鍒ゆ柇灏忚溅鏄惁宸插埌浣�
-                if (liftProtocol.getHasCar()) {
-                    List<LiftCommand> signalCommand = liftThread.getShuttleSignalCommand(motion.getTaskNo(), true);//鑾峰彇灏忚溅宸插埌浣嶅懡浠�
-                    if(signalCommand != null) {
-                        boolean hasKey = redisUtil.hasKey(DeviceRedisConstant.COMMAND_TMP + motion.getTaskNo());
-                        if (!hasKey) {
-                            LiftAssignCommand liftAssignCommand = new LiftAssignCommand();
-                            liftAssignCommand.setLiftNo(liftThread.getStatus().getLiftNo());
-                            liftAssignCommand.setTaskNo(motion.getTaskNo());
-                            ArrayList<LiftCommand> list = new ArrayList<>();
-                            list.addAll(signalCommand);
-                            liftAssignCommand.setCommands(list);
-                            liftAction.assignWork(liftThread.getDevice(), liftAssignCommand);
-                            redisUtil.set(DeviceRedisConstant.COMMAND_TMP + motion.getTaskNo(), true, 120);
-                            return false;
-                        }
-                    }
-                }
-
-                //鍒ゆ柇鎻愬崌鏈哄伐浣滃彿鏄惁鍜屽綋鍓嶄换鍔$浉鍚�
-                if (liftProtocol.getTaskNo().intValue() != motion.getTaskNo()) {
                     return false;
                 }
 
-                if (liftProtocol.getTaskNo() != 0) {
-                    //娓呯┖鎻愬崌鏈哄彿
-                    liftThread.setSyncTaskNo(0);
+                //鍒ゆ柇灏忚溅鏄惁宸插埌浣�
+                if (!liftProtocol.getHasCar()) {
+                    return false;
                 }
+
+//                //鍒ゆ柇鎻愬崌鏈哄伐浣滃彿鏄惁鍜屽綋鍓嶄换鍔$浉鍚�
+//                if (liftProtocol.getTaskNo().intValue() != motion.getTaskNo()) {
+//                    return false;
+//                }
                 break;
             case SHUTTLE_MOVE_FROM_LIFT:
                 liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, Integer.parseInt(motion.getTemp()));
@@ -372,54 +342,24 @@
                 }
 
                 //鍒ゆ柇鎻愬崌鏈烘槸鍚﹁閿佸畾
-                if (liftThread.isLock(new ExecuteSupport() {
+                if (!liftThread.isLock(new ExecuteSupport() {
                     @Override
                     public Boolean judgement() {
                         return false;
                     }
                 })) {
-                    //瑙i攣鎻愬崌鏈�
-                    List<LiftCommand> lockCommand = liftThread.getLockCommand(motion.getTaskNo(), false);//鑾峰彇鎻愬崌鏈鸿В閿佸懡浠�
-
-                    LiftAssignCommand liftAssignCommand = new LiftAssignCommand();
-                    liftAssignCommand.setLiftNo(liftThread.getStatus().getLiftNo());
-                    liftAssignCommand.setTaskNo(motion.getTaskNo());
-                    ArrayList<LiftCommand> list = new ArrayList<>();
-                    list.addAll(lockCommand);
-                    liftAssignCommand.setCommands(list);
-
-                    liftAction.assignWork(liftThread.getDevice(), liftAssignCommand);
-                    return false;//绛夊緟涓嬩竴娆¤疆璇�
-                }
-
-                //鍒ゆ柇灏忚溅鏄惁宸茬寮�
-                if (!liftProtocol.getHasCar()) {
-                    List<LiftCommand> signalCommand = liftThread.getShuttleSignalCommand(motion.getTaskNo(), false);//鑾峰彇灏忚溅宸查┚绂诲懡浠�
-                    if(signalCommand != null) {
-                        boolean hasKey = redisUtil.hasKey(DeviceRedisConstant.COMMAND_TMP + motion.getTaskNo());
-                        if (!hasKey) {
-                            redisUtil.set(DeviceRedisConstant.COMMAND_TMP + motion.getTaskNo(), JSON.toJSONString(signalCommand), 120);
-                            LiftAssignCommand liftAssignCommand = new LiftAssignCommand();
-                            liftAssignCommand.setLiftNo(liftThread.getStatus().getLiftNo());
-                            liftAssignCommand.setTaskNo(motion.getTaskNo());
-                            ArrayList<LiftCommand> list = new ArrayList<>();
-                            list.addAll(signalCommand);
-                            liftAssignCommand.setCommands(list);
-                            liftAction.assignWork(liftThread.getDevice(), liftAssignCommand);
-                            return false;
-                        }
-                    }
-                }
-
-                //鍒ゆ柇鎻愬崌鏈哄伐浣滃彿鏄惁鍜屽綋鍓嶄换鍔$浉鍚�
-                if (liftProtocol.getTaskNo().intValue() != motion.getTaskNo()) {
                     return false;
                 }
 
-                if (liftProtocol.getTaskNo() != 0) {
-                    //娓呯┖鎻愬崌鏈哄彿
-                    liftThread.setSyncTaskNo(0);
+                //鍒ゆ柇灏忚溅鏄惁宸茬寮�
+                if (liftProtocol.getHasCar()) {
+                    return false;
                 }
+
+//                //鍒ゆ柇鎻愬崌鏈哄伐浣滃彿鏄惁鍜屽綋鍓嶄换鍔$浉鍚�
+//                if (liftProtocol.getTaskNo().intValue() != motion.getTaskNo()) {
+//                    return false;
+//                }
                 break;
             case SHUTTLE_TRANSPORT_FROM_LIFT:
             case SHUTTLE_TRANSPORT_TO_LIFT:
@@ -441,28 +381,12 @@
                         return false;
                     }
                 })) {
-                    //瑙i攣鎻愬崌鏈�
-                    List<LiftCommand> lockCommand = liftThread.getLockCommand(motion.getTaskNo(), false);//鑾峰彇鎻愬崌鏈鸿В閿佸懡浠�
-
-                    LiftAssignCommand liftAssignCommand = new LiftAssignCommand();
-                    liftAssignCommand.setLiftNo(liftThread.getStatus().getLiftNo());
-                    liftAssignCommand.setTaskNo(motion.getTaskNo());
-                    ArrayList<LiftCommand> list = new ArrayList<>();
-                    list.addAll(lockCommand);
-                    liftAssignCommand.setCommands(list);
-
-                    liftAction.assignWork(liftThread.getDevice(), liftAssignCommand);
-                    return false;//绛夊緟涓嬩竴娆¤疆璇�
+                    return false;
                 }
 
                 //鍒ゆ柇鎻愬崌鏈哄伐浣滃彿鏄惁鍜屽綋鍓嶄换鍔$浉鍚�
                 if (liftProtocol.getTaskNo().intValue() != motion.getTaskNo()) {
                     return false;
-                }
-
-                if (liftProtocol.getTaskNo() != 0) {
-                    //娓呯┖鎻愬崌鏈哄彿
-                    liftThread.setSyncTaskNo(0);
                 }
                 break;
             case SHUTTLE_UPDATE_LOCATION://灏忚溅鍧愭爣鏇存柊

--
Gitblit v1.9.1