From f653130e5df936041f7a5ae005e10c91415b64b1 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期四, 10 七月 2025 15:54:33 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/Utils.java | 58 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 43 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index 3f6b511..454a799 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -4,17 +4,19 @@ import com.core.common.Arith; import com.core.common.Cools; import com.core.common.SpringUtils; +import com.zy.asrs.entity.DeviceConfig; import com.zy.asrs.entity.LocMast; +import com.zy.asrs.entity.WrkMast; +import com.zy.asrs.service.DeviceConfigService; import com.zy.asrs.service.LocMastService; +import com.zy.asrs.service.WrkMastService; import com.zy.common.model.NavigateNode; import com.zy.common.model.enums.NavigationMapType; import com.zy.common.utils.NavigatePositionConvert; import com.zy.common.utils.NavigateUtils; import com.zy.core.cache.SlaveConnection; import com.zy.core.enums.SlaveType; -import com.zy.core.model.ShuttleSlave; import com.zy.core.model.protocol.ShuttleProtocol; -import com.zy.core.properties.SlaveProperties; import com.zy.core.thread.ShuttleThread; import java.text.DecimalFormat; import java.util.*; @@ -107,15 +109,18 @@ //鑾峰彇闄ょ櫧鍚嶅崟澶栫殑鎸囧畾妤煎眰鍏ㄩ儴绌挎杞y鍧愭爣鐐� public static List<int[]> getShuttlePoints(Integer whiteShuttle, Integer lev) { - SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); + DeviceConfigService deviceConfigService = SpringUtils.getBean(DeviceConfigService.class); ArrayList<int[]> list = new ArrayList<>(); - for (ShuttleSlave slave : slaveProperties.getShuttle()) { - if (slave.getId().intValue() == whiteShuttle) { + + List<DeviceConfig> shuttleList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() + .eq("device_type", String.valueOf(SlaveType.Shuttle))); + for (DeviceConfig device : shuttleList) { + if (device.getDeviceNo().intValue() == whiteShuttle) { continue;//璺宠繃鐧藉悕鍗� } //鑾峰彇绌挎杞︽墍鍦ㄨ妭鐐逛綅缃� - ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId()); + ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, device.getDeviceNo()); if (shuttleThread == null) { continue; } @@ -142,12 +147,16 @@ return list; } - //妫�娴嬫ゼ灞傛槸鍚︽湁绌挎杞� + //妫�娴嬫ゼ灞傛槸鍚︽湁鍙敤绌挎杞� public static boolean checkLevHasShuttle(Integer lev) { - SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); - for (ShuttleSlave shuttle : slaveProperties.getShuttle()) { + DeviceConfigService deviceConfigService = SpringUtils.getBean(DeviceConfigService.class); + WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class); + + 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, shuttle.getId()); + ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, device.getDeviceNo()); if (shuttleThread == null) { continue; } @@ -157,6 +166,22 @@ } String currentLocNo = shuttleProtocol.getCurrentLocNo(); if (currentLocNo == null) { + continue; + } + + //灏忚溅姝e湪鍏呯數 + if (shuttleThread.isCharging()) { + continue; + } + + //灏忚溅鏈夊厖鐢典换鍔� + WrkMast chargeWorking = wrkMastService.selectChargeWorking(shuttleProtocol.getShuttleNo()); + if (chargeWorking != null) {//宸叉湁鍏呯數浠诲姟 + continue; + } + + //灏忚溅澶勪簬鏁呴殰鐘舵�� + if (shuttleThread.isFault()) { continue; } @@ -178,14 +203,17 @@ return null; } - SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); - if (slaveProperties == null) { + DeviceConfigService deviceConfigService = SpringUtils.getBean(DeviceConfigService.class); + if (deviceConfigService == null) { return null; } + List<DeviceConfig> shuttleList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() + .eq("device_type", String.valueOf(SlaveType.Shuttle))); + for (String loc : groupLoc) { - for (ShuttleSlave slave : slaveProperties.getShuttle()) { - ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId()); + for (DeviceConfig device : shuttleList) { + ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, device.getDeviceNo()); if (shuttleThread == null) { continue; } @@ -201,7 +229,7 @@ if (shuttleProtocol.getCurrentLocNo().equals(loc)) { //瀛樺湪灏忚溅 - return slave.getId(); + return device.getDeviceNo(); } } } -- Gitblit v1.9.1