Junjie
2023-12-08 ffe256867f19115a442d96abadd270d2c17835a9
src/main/java/com/zy/common/utils/ShuttleDispatchUtils.java
@@ -467,4 +467,43 @@
        return true;//无充电任务放行 || 去充电桩中放行
    }
    /**
     * 获取楼层可用空闲小车数量
     */
    public int getShuttleCountByLev(int lev) {
        int count = 0;
        for (ShuttleSlave slave : slaveProperties.getShuttle()) {
            //获取四向穿梭车线程
            NyShuttleThread shuttleThread = (NyShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId());
            if (shuttleThread == null) {
                continue;
            }
            NyShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol();
            if (shuttleProtocol == null || shuttleProtocol.getShuttleNo() == null) {
                continue;
            }
            if (checkChargeWrk(slave.getId())) {
                continue;//存在充电任务,过滤小车
            }
            if (!shuttleProtocol.isIdle()) {
                continue;//小车忙碌中
            }
            if (shuttleProtocol.getSuspendState() == 1) {
                //小车处于管制中
                continue;
            }
            if (shuttleProtocol.getPoint().getZ() == lev) {
                //同一楼层空闲可用小车
                count++;
                continue;
            }
        }
        return count;
    }
}