From 2db722e23d7e5d1d2e719174938f354d804644af Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期二, 23 四月 2024 08:13:52 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 49 insertions(+), 8 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java
index 0e3e5f2..ed5431c 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zy.asrs.framework.common.Cools;
+import com.zy.asrs.framework.common.R;
 import com.zy.asrs.wcs.core.domain.dto.MotionDto;
 import com.zy.asrs.wcs.core.entity.ShuttleStandby;
 import com.zy.asrs.wcs.core.entity.Task;
@@ -11,12 +12,14 @@
 import com.zy.asrs.wcs.core.model.enums.WorkZoneType;
 import com.zy.asrs.wcs.core.service.ShuttleStandbyService;
 import com.zy.asrs.wcs.core.service.TaskService;
+import com.zy.asrs.wcs.core.utils.ConveyorDispatcher;
 import com.zy.asrs.wcs.core.utils.LiftDispatcher;
 import com.zy.asrs.wcs.core.utils.ShuttleDispatcher;
 import com.zy.asrs.wcs.core.utils.Utils;
 import com.zy.asrs.wcs.rcs.cache.SlaveConnection;
 import com.zy.asrs.wcs.core.entity.Motion;
 import com.zy.asrs.wcs.rcs.entity.Device;
+import com.zy.asrs.wcs.rcs.model.enums.LiftProtocolStatusType;
 import com.zy.asrs.wcs.rcs.model.enums.SlaveType;
 import com.zy.asrs.wcs.rcs.model.protocol.LiftProtocol;
 import com.zy.asrs.wcs.rcs.model.protocol.ShuttleProtocol;
@@ -48,8 +51,8 @@
     private ShuttleDispatcher shuttleDispatcher;
     @Autowired
     private LiftDispatcher liftDispatcher;
-//    @Autowired
-//    private ConveyorDispatcher conveyorDispatcher;
+    @Autowired
+    private ConveyorDispatcher conveyorDispatcher;
     @Autowired
     private DeviceService deviceService;
     @Autowired
@@ -57,12 +60,13 @@
 
     public List<Motion> generateMotion(Task task) {
         List<Motion> motionList = new ArrayList<>();
-        switch (Objects.requireNonNull(WorkZoneType.query(task.getTaskSts() == TaskStsType.NEW_INBOUND.sts ? task.getOriginSite() : task.getDestSite()))) {
-            case FIRST_ZONE:
-                motionList = this.generateFirstZoneMotion(task);
-                break;
-            default:
-        }
+//        switch (Objects.requireNonNull(WorkZoneType.query(task.getTaskSts() == TaskStsType.NEW_INBOUND.sts ? task.getOriginSite() : task.getDestSite()))) {
+//            case FIRST_ZONE:
+//                motionList = this.generateFirstZoneMotion(task);
+//                break;
+//            default:
+//        }
+        motionList = this.generateFirstZoneMotion(task);
         return motionList;
     }
 
@@ -1144,4 +1148,41 @@
         return motionList;
     }
 
+    /**
+     * 鐢熸垚鎻愬崌鏈烘墜鍔ㄥ姩浣�
+     */
+    public List<Motion> generateLiftManualMotion(Task task) {
+        List<Motion> motionList = new ArrayList<>();
+        if (task.getTaskSts() != TaskStsType.NEW_MANUAL.sts) {
+            return motionList;
+        }
+
+        Device device = deviceService.getOne(new LambdaQueryWrapper<Device>()
+                .eq(Device::getDeviceNo, task.getLiftNo())
+                .eq(Device::getDeviceType, DeviceCtgType.LIFT.val())
+                .eq(Device::getHostId, task.getHostId())
+                .eq(Device::getStatus, 1));
+        if (device == null) {
+            return motionList;
+        }
+
+        if (task.getDestSite().equals("move")) {
+            //鎻愬崌鏈哄崌闄嶆ゼ灞�
+
+            // 鎻愬崌鏈虹┖杞界Щ鍔ㄥ埌绌挎杞﹀眰
+            motionList.addAll(kernelService.liftMove(
+                    null
+                    , MotionDto.build((dto -> {
+                        dto.setLiftNo(device.getId().intValue());
+                        dto.setLev(Integer.parseInt(task.getDestLoc()));
+                    }))
+            ));
+
+        } else if (task.getDestSite().equals("movePallet")) {
+            //绉诲姩鎵樼洏
+        }
+
+        return motionList;
+    }
+
 }

--
Gitblit v1.9.1