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 | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 51 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index b8b27d5..d2f58a8 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -6,11 +6,22 @@ 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.*; + +import java.util.ArrayList; +import java.util.HashMap; @Slf4j @RestController @@ -23,6 +34,8 @@ private ShuttleDispatchUtils shuttleDispatchUtils; @Autowired private NotifyUtils notifyUtils; + @Autowired + private SlaveProperties slaveProperties; @PostMapping("/createMoveTask") public R createMoveTask(@RequestBody CreateMoveTaskParam param) { @@ -99,6 +112,44 @@ 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"); -- Gitblit v1.9.1