From 22d407815c830a571eeff91713860d65271f38de Mon Sep 17 00:00:00 2001 From: qlsxk <qlsxk@qq.com> Date: 星期六, 11 十月 2025 10:14:33 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/OpenController.java | 182 +++++++++++++++++++++++++++++++++------------ 1 files changed, 132 insertions(+), 50 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 06b1e9d..fd12ce9 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -3,25 +3,29 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.R; -import com.zy.asrs.domain.NotifyDto; +import com.zy.asrs.domain.ShuttleGatherResult; import com.zy.asrs.domain.enums.NotifyMsgType; import com.zy.asrs.domain.param.*; import com.zy.asrs.entity.ApiLog; +import com.zy.asrs.entity.DeviceConfig; import com.zy.asrs.entity.LocMast; +import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.ApiLogService; +import com.zy.asrs.service.DeviceConfigService; import com.zy.asrs.service.LocMastService; +import com.zy.asrs.service.WrkMastService; import com.zy.asrs.utils.NotifyUtils; import com.zy.common.annotations.OpenApiLog; 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.enums.WrkIoType; import com.zy.core.model.protocol.ForkLiftProtocol; +import com.zy.core.model.protocol.LiftProtocol; import com.zy.core.model.protocol.ShuttleProtocol; -import com.zy.core.properties.SlaveProperties; import com.zy.core.thread.ForkLiftThread; +import com.zy.core.thread.LiftThread; import com.zy.core.thread.ShuttleThread; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -44,11 +48,13 @@ @Autowired private NotifyUtils notifyUtils; @Autowired - private SlaveProperties slaveProperties; - @Autowired private ApiLogService apiLogService; @Autowired private LocMastService locMastService; + @Autowired + private WrkMastService wrkMastService; + @Autowired + private DeviceConfigService deviceConfigService; @PostMapping("/createMoveTask") @OpenApiLog(memo = "灏忚溅绉诲姩浠诲姟") @@ -227,14 +233,16 @@ return R.error("浠诲姟鍙栨秷澶辫触"); } - @PostMapping("/deviceStatus") - @OpenApiLog(memo = "鑾峰彇璁惧鐘舵��") + @RequestMapping("/deviceStatus") +// @OpenApiLog(memo = "鑾峰彇璁惧鐘舵��") 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()); + List<DeviceConfig> shuttleList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() + .eq("device_type", String.valueOf(SlaveType.Shuttle))); + for (DeviceConfig device : shuttleList) { + ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, device.getDeviceNo()); if (shuttleThread == null) { continue; } @@ -248,8 +256,10 @@ //鑾峰彇璐у弶鎻愬崌鏈烘暟鎹� ArrayList<ForkLiftProtocol> forkLiftProtocols = new ArrayList<>(); - for (ForkLiftSlave slave : slaveProperties.getForkLift()) { - ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, slave.getId()); + List<DeviceConfig> forkLiftList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() + .eq("device_type", String.valueOf(SlaveType.ForkLift))); + for (DeviceConfig device : forkLiftList) { + ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, device.getDeviceNo()); if (forkLiftThread == null) { continue; } @@ -261,25 +271,45 @@ forkLiftProtocols.add(forkLiftProtocol); } + //鑾峰彇鎻愬崌鏈烘暟鎹� + ArrayList<LiftProtocol> liftProtocols = new ArrayList<>(); + List<DeviceConfig> liftList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() + .eq("device_type", String.valueOf(SlaveType.Lift))); + for (DeviceConfig device : liftList) { + LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, device.getDeviceNo()); + if (liftThread == null) { + continue; + } + + LiftProtocol liftProtocol = liftThread.getStatus(); + if (liftProtocol == null) { + continue; + } + liftProtocols.add(liftProtocol); + } + map.put("shuttle", shuttleProtocols); map.put("forkLift", forkLiftProtocols); + map.put("lift", liftProtocols); - apiLogService.insert(new ApiLog( - null - , "鑾峰彇璁惧鐘舵��" - , "/deviceStatus" - , null - , null - , null - , null - , JSON.toJSONString(map) - , null - , null - , 1 - , new Date() - , null - , null - )); + return R.ok().add(map); + } + + @RequestMapping("/liftDeviceOriginData") + public R getLiftDeviceOriginData() { + HashMap<Integer, String> map = new HashMap<>(); + + //鑾峰彇鎻愬崌鏈烘暟鎹� + List<DeviceConfig> liftList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() + .eq("device_type", String.valueOf(SlaveType.Lift))); + for (DeviceConfig device : liftList) { + LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, device.getDeviceNo()); + if (liftThread == null) { + continue; + } + + map.put(device.getDeviceNo(), liftThread.getRealtimeOriginData()); + } return R.ok().add(map); } @@ -298,23 +328,6 @@ HashMap<String, Object> map = new HashMap<>(); map.put("locNo", locMast.getLocNo()); map.put("locSts", locMast.getLocSts()); - - apiLogService.insert(new ApiLog( - null - , "鑾峰彇鎸囧畾搴撲綅淇℃伅" - , "/getLocInformation" - , null - , null - , null - , JSON.toJSONString(param) - , JSON.toJSONString(map) - , null - , null - , 1 - , new Date() - , null - , null - )); return R.ok().add(map); } @@ -335,15 +348,23 @@ list.add(map); } + return R.ok().add(list); + } + + @PostMapping("/shuttleGather") + @OpenApiLog(memo = "灏忚溅闆嗗悎") + public R shuttleGather(@RequestBody ShuttleGatherParam param) { + List<ShuttleGatherResult> shuttleGather = shuttleDispatchUtils.shuttleGather(param); + apiLogService.insert(new ApiLog( null - , "鑾峰彇鎸囧畾搴撲綅淇℃伅" - , "/getLocInformation" + , "灏忚溅闆嗗悎" + , "/shuttleGather" , null , null , null - , null - , JSON.toJSONString(list) + , JSON.toJSONString(param) + , JSON.toJSONString(shuttleGather) , null , null , 1 @@ -352,7 +373,68 @@ , null )); - return R.ok().add(list); + return R.ok().add(shuttleGather); + } + + @PostMapping("/shuttleDemo") + @OpenApiLog(memo = "灏忚溅婕旂ず") + public R shuttleDemo(@RequestBody ShuttleDemoParam param) { + shuttleDispatchUtils.shuttleDemo(param); + + apiLogService.insert(new ApiLog( + null + , "灏忚溅婕旂ず" + , "/shuttleDemo" + , null + , null + , null + , JSON.toJSONString(param) + , null + , null + , null + , 1 + , new Date() + , null + , null + )); + + return R.ok(); + } + + @PostMapping("/queryTask") + @OpenApiLog(memo = "鏌ヨ浠诲姟") + public R queryTask(@RequestBody QueryTaskParam param) { + EntityWrapper<WrkMast> wrapper = new EntityWrapper<>(); + if(param.getTaskNo() != null) { + wrapper.eq("wms_wrk_no", param.getTaskNo()); + } + + if(param.getTaskType() != null) { + WrkIoType ioType = WrkIoType.get(param.getTaskType()); + if(ioType == null) { + return R.error("浠诲姟绫诲瀷涓嶅瓨鍦�"); + } + wrapper.eq("io_type", ioType.id); + } + List<WrkMast> wrkMasts = wrkMastService.selectList(wrapper); + apiLogService.insert(new ApiLog( + null + , "鏌ヨ浠诲姟" + , "/queryTask" + , null + , null + , null + , JSON.toJSONString(param) + , JSON.toJSONString(wrkMasts) + , null + , null + , 1 + , new Date() + , null + , null + )); + + return R.ok().add(wrkMasts); } @GetMapping("/test") -- Gitblit v1.9.1