#
Junjie
2025-02-11 ed265ddfb8f08f69af064a9adf65fcbf06289ffe
src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java
@@ -13,6 +13,7 @@
import com.zy.core.News;
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.SlaveType;
import com.zy.core.enums.WrkIoType;
import com.zy.core.enums.WrkStsType;
import com.zy.core.model.ForkLiftSlave;
import com.zy.core.model.ShuttleSlave;
@@ -243,19 +244,25 @@
                return false;//没有可用且空闲的输送站点
            }
            sourceStaNo = liftSta.getStaNo();//源站点
            //提升机号*100+目标楼层=目标站点
            staNo = liftSta.getLiftNo() * 100 + Utils.getLev(locNo);//目标站
            ForkLiftStaProtocol targetLiftSta = ForkLiftUtils.getLiftStaByLev(liftSta.getLiftNo(), Utils.getLev(locNo));
            if (targetLiftSta == null) {
                News.info("{}号小车,{}目标库位,没有目标站点", shuttleNo, locNo);
                return false;//没有找到目标站点
            }
            //目标站点
            staNo = targetLiftSta.getStaNo();//目标站
        }
        // 获取工作号
        int workNo = commonService.getWorkNo(0);
        int workNo = commonService.getWorkNo(WrkIoType.SHUTTLE_MOVE.id);
        // 保存工作档
        WrkMast wrkMast = new WrkMast();
        wrkMast.setWrkNo(workNo);
        wrkMast.setIoTime(now);
        wrkMast.setWrkSts(WrkStsType.NEW_MOVE.sts); // 工作状态:301.生成迁移任务
        wrkMast.setIoType(200); // 入出库状态: 200.小车迁移
        wrkMast.setIoPri(20D);
        wrkMast.setIoType(WrkIoType.SHUTTLE_MOVE.id); // 入出库状态: 200.小车迁移
        wrkMast.setIoPri(800D);
        wrkMast.setShuttleNo(shuttleNo);//穿梭车号
        wrkMast.setSourceLocNo(shuttleProtocol.getCurrentLocNo()); // 源库位 => 小车当前库位号
        wrkMast.setLocNo(locNo); // 目标库位