From 21569e095e2c707e87634d6b94526a6609f902a9 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期一, 17 二月 2025 13:42:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/shuttle_rcs' into shuttle_rcs
---
src/main/java/com/zy/asrs/controller/OpenController.java | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 105 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 129551f..d2f58a8 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -1,17 +1,27 @@
package com.zy.asrs.controller;
import com.core.common.R;
-import com.zy.asrs.domain.param.CancelTaskParam;
-import com.zy.asrs.domain.param.CompleteTaskParam;
-import com.zy.asrs.domain.param.CreateMoveTaskParam;
+import com.zy.asrs.domain.NotifyDto;
+import com.zy.asrs.domain.enums.NotifyMsgType;
+import com.zy.asrs.domain.param.*;
+import com.zy.asrs.utils.NotifyUtils;
import com.zy.common.service.CommonService;
+import com.zy.core.cache.SlaveConnection;
import com.zy.core.dispatcher.ShuttleDispatchUtils;
+import com.zy.core.enums.SlaveType;
+import com.zy.core.model.ForkLiftSlave;
+import com.zy.core.model.ShuttleSlave;
+import com.zy.core.model.protocol.ForkLiftProtocol;
+import com.zy.core.model.protocol.ShuttleProtocol;
+import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.ForkLiftThread;
+import com.zy.core.thread.ShuttleThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
@Slf4j
@RestController
@@ -22,6 +32,10 @@
private CommonService commonService;
@Autowired
private ShuttleDispatchUtils shuttleDispatchUtils;
+ @Autowired
+ private NotifyUtils notifyUtils;
+ @Autowired
+ private SlaveProperties slaveProperties;
@PostMapping("/createMoveTask")
public R createMoveTask(@RequestBody CreateMoveTaskParam param) {
@@ -33,6 +47,45 @@
return R.ok();
}
return R.error("鐢熸垚澶辫触");
+ }
+
+ //绉诲簱浠诲姟
+ @PostMapping("/createLocMoveTask")
+ public R createLocMoveTask(@RequestBody CreateLocMoveTaskParam param) {
+ if (param == null) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖");
+ }
+ boolean result = commonService.createLocMoveTask(param);
+ if (result) {
+ return R.ok();
+ }
+ return R.error("鐢熸垚绉诲簱浠诲姟澶辫触");
+ }
+
+ //鍏ュ簱浠诲姟
+ @PostMapping("/createInTask")
+ public R createInTask(@RequestBody CreateInTaskParam param) {
+ if (param == null) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖");
+ }
+ boolean result = commonService.createInTask(param);
+ if (result) {
+ return R.ok();
+ }
+ return R.error("鐢熸垚鍏ュ簱浠诲姟澶辫触");
+ }
+
+ //鍑哄簱浠诲姟
+ @PostMapping("/createOutTask")
+ public R createOutTask(@RequestBody CreateOutTaskParam param) {
+ if (param == null) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖");
+ }
+ boolean result = commonService.createOutTask(param);
+ if (result) {
+ return R.ok();
+ }
+ return R.error("鐢熸垚鍑哄簱浠诲姟澶辫触");
}
@PostMapping("/completeTask")
@@ -59,4 +112,49 @@
return R.error("浠诲姟鍙栨秷澶辫触");
}
+ @PostMapping("/deviceStatus")
+ public R getDeviceStatus() {
+ HashMap<String, Object> map = new HashMap<>();
+ //鑾峰彇灏忚溅鏁版嵁
+ ArrayList<ShuttleProtocol> shuttleProtocols = new ArrayList<>();
+ for (ShuttleSlave slave : slaveProperties.getShuttle()) {
+ ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId());
+ if (shuttleThread == null) {
+ continue;
+ }
+
+ ShuttleProtocol shuttleProtocol = shuttleThread.getStatus();
+ if (shuttleProtocol == null) {
+ continue;
+ }
+ shuttleProtocols.add(shuttleProtocol);
+ }
+
+ //鑾峰彇璐у弶鎻愬崌鏈烘暟鎹�
+ ArrayList<ForkLiftProtocol> forkLiftProtocols = new ArrayList<>();
+ for (ForkLiftSlave slave : slaveProperties.getForkLift()) {
+ ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, slave.getId());
+ if (forkLiftThread == null) {
+ continue;
+ }
+
+ ForkLiftProtocol forkLiftProtocol = forkLiftThread.getStatus();
+ if (forkLiftProtocol == null) {
+ continue;
+ }
+ forkLiftProtocols.add(forkLiftProtocol);
+ }
+
+ map.put("shuttle", shuttleProtocols);
+ map.put("forkLift", forkLiftProtocols);
+ return R.ok().add(map);
+ }
+
+ @GetMapping("/test")
+ public R test() {
+ notifyUtils.notify("task", 1, "9999", "W9999", NotifyMsgType.SHUTTLE_MOVING, "data");
+ notifyUtils.notify(String.valueOf(SlaveType.Shuttle), 2, "9999", "W9999", NotifyMsgType.SHUTTLE_MOVE_COMPLETE);
+ return R.ok();
+ }
+
}
--
Gitblit v1.9.1