zc
2025-05-07 fcb71b8fc63f74cd00d3faa76c73f4c5566ee352
src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java
@@ -220,6 +220,16 @@
                 News.taskInfo(wrkMast.getWrkNo(),"{}号提升机对象不存在", wrkMast.getLiftNo());
                return false;
            }
            //判断提升机是否有其他任务(该任务需要换层必须提前独占提升机)
            WrkMast liftWrkMast = wrkMastService.selectLiftWrkMastAndWrkNo(liftProtocol.getLiftNo(), wrkMast.getWrkNo(), wrkMast.getMainWrkNo());
            if (liftWrkMast != null) {
                if (liftWrkMast != null && !wrkMast.getMainWrkNo().equals(liftWrkMast.getWrkNo())) {
                    News.taskInfo(wrkMast.getWrkNo(), "{}任务,{}号提升机,提升机存在未完成任务,禁止派发", wrkMast.getWrkNo(), liftProtocol.getLiftNo());
                    return false;//当前提升机存在未完成任务,等待下一次轮询
                }
            }
            //当1011入库,托盘在提升机里,1014也在入库,待机位被1014占住,去提升机里的任务,小车会卡住
            if (liftProtocol.getHasTray() && liftProtocol.getLev() == 1 && wrkMast.getStaNo() != null && wrkMast.getStaNo() == 1015) {
                 News.taskInfo(wrkMast.getWrkNo(),"{}任务,{}号提升机,提升机内有托盘且在1层需要小车去接,就不要占住待机位,禁止派发", wrkMast.getWrkNo(), liftProtocol.getLiftNo());
@@ -260,6 +270,10 @@
            assignCommand.setCommands(commands);
            wrkMast.setLiftNo(liftProtocol.getLiftNo());//提前锁定提升机
            wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_3.sts);//小车移动到待机点
            wrkMast.setModiTime(now);
            wrkMast.setSystemMsg("");//清空消息
@@ -369,6 +383,7 @@
                //提升机在小车楼层
                wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_6.sts);//小车移动到提升机中  小车移动至站点完成 ==> 提升机至小车层完成
                wrkMast.setModiTime(now);
                wrkMast.setLiftNo(1);
                wrkMastService.updateById(wrkMast);
                return false;
            }