From f84448a10d99a0fa82e71088051e3517637edaa7 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期二, 09 四月 2024 15:11:52 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java
index 7c6e2d7..e7c5592 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java
@@ -9,11 +9,13 @@
 import com.zy.asrs.wcs.core.model.enums.MotionStsType;
 import com.zy.asrs.wcs.core.model.enums.TaskStsType;
 import com.zy.asrs.wcs.core.service.*;
+import com.zy.asrs.wcs.core.utils.ShuttleDispatcher;
 import com.zy.asrs.wcs.core.utils.Utils;
 import com.zy.asrs.wcs.rcs.News;
 import com.zy.asrs.wcs.rcs.cache.SlaveConnection;
 import com.zy.asrs.wcs.rcs.entity.Device;
 import com.zy.asrs.wcs.rcs.entity.DeviceType;
+import com.zy.asrs.wcs.rcs.model.enums.ShuttleProtocolStatusType;
 import com.zy.asrs.wcs.rcs.model.enums.SlaveType;
 import com.zy.asrs.wcs.rcs.model.protocol.ShuttleProtocol;
 import com.zy.asrs.wcs.rcs.model.protocol.StaProtocol;
@@ -61,6 +63,8 @@
     private TaskCtgService taskCtgService;
     @Autowired
     private DictService dictService;
+    @Autowired
+    private ShuttleDispatcher shuttleDispatcher;
 
     /**
      * 缁勬墭
@@ -191,6 +195,10 @@
                 continue;
             }
 
+            if (!shuttleProtocol.getProtocolStatusType().equals(ShuttleProtocolStatusType.IDLE)) {
+                continue;
+            }
+
             String currentLocNo = shuttleProtocol.getCurrentLocNo();
             int lev = Utils.getLev(currentLocNo);//鑾峰彇灏忚溅妤煎眰
             //鎼滅储灏忚溅褰撳墠妤煎眰鍏呯數妗�
@@ -248,6 +256,11 @@
 
             //鍒ゆ柇褰撳墠灏忚溅鏄惁婊¤冻闇�瑕佸厖鐢佃姹�
             if (!shuttleThread.isRequireCharge()) {
+                continue;
+            }
+
+            Task taskCharge = taskService.selectChargeWorking(Integer.valueOf(device.getDeviceNo()));
+            if (taskCharge != null) {//宸叉湁鍏呯數浠诲姟
                 continue;
             }
 
@@ -346,6 +359,9 @@
                 continue;
             }
 
+            //鑾峰彇閬胯浣嶇疆
+            String standByLocNo = shuttleDispatcher.searchStandByLocNo(Integer.valueOf(device.getDeviceNo()), device.getHostId(), shuttleThread.getStatus().getCurrentLocNo());
+
             Task task = new Task();
             task.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
             task.setTaskNo(String.valueOf(Utils.getTaskNo("MOVE")));
@@ -355,7 +371,7 @@
             task.setOriginSite(null);
             task.setOriginLoc(null);
             task.setDestSite(null);
-            task.setDestLoc("1-1-1"); // 鏆傛椂鏈畾
+            task.setDestLoc(standByLocNo); // 閬胯浣嶇疆
             task.setIoTime(new Date());
             task.setStartTime(new Date());
             task.setHostId(device.getHostId());

--
Gitblit v1.9.1