#
Junjie
4 天以前 ce9c9af4a3710d17e17814bab629ab4ef474f3f1
src/main/java/com/zy/asrs/utils/Utils.java
@@ -4,8 +4,10 @@
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;
@@ -109,15 +111,18 @@
    //获取除白名单外的指定楼层全部穿梭车xy坐标点
    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;
            }
@@ -146,11 +151,14 @@
    //检测楼层是否有可用穿梭车
    public static boolean checkLevHasShuttle(Integer lev) {
        SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class);
        DeviceConfigService deviceConfigService = SpringUtils.getBean(DeviceConfigService.class);
        WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class);
        for (ShuttleSlave shuttle : slaveProperties.getShuttle()) {
        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;
            }
@@ -197,14 +205,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;
                }
@@ -220,7 +231,7 @@
                if (shuttleProtocol.getCurrentLocNo().equals(loc)) {
                    //存在小车
                    return slave.getId();
                    return device.getDeviceNo();
                }
            }
        }