#
Junjie
2024-10-17 d62c5c0eb2e28b7bf27d23de84a609b5a2e415e4
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/KernelService.java
@@ -86,7 +86,10 @@
            }
            motion.setTarget(String.valueOf(liftDispatcher.getLiftLevOffset(target.getLiftNo(), target.getLev())));
            motion.setTarDrt(target.getStaNo());//目标站
            motion.setDockNo(String.valueOf(target.getDevpNo()));//输送线ID
            if (target.getDevpNo() != null) {
                motion.setDockNo(String.valueOf(target.getDevpNo()));//输送线ID
            }
            if (target.getSync() != null) {
                motion.setSync(target.getSync());
@@ -115,6 +118,11 @@
            if (null != origin) {
                motion.setOrigin(String.valueOf(liftDispatcher.getLiftLevOffset(target.getLiftNo(), origin.getLev())));
            }
            if (target.getTaskNo() != null) {
                motion.setTaskNo(target.getTaskNo());
            }
            motion.setTarget(String.valueOf(liftDispatcher.getLiftLevOffset(target.getLiftNo(), target.getLev())));
        }));
@@ -290,8 +298,27 @@
                    motion.setTemp(String.valueOf(origin.getLiftNo()));//保存提升机号
                    motion.setDockNo(String.valueOf(target.getStaNo()));
                    break;
                case SHUTTLE_TRANSPORT_TO_CONVEYOR://穿梭车载货进输送线
                    motion.setDockNo(String.valueOf(target.getStaNo()));
                    break;
                case SHUTTLE_MOVE_STANDBY://穿梭车移动到待机位
                    motion.setTarget(null);//等待自动搜索
                    motion.setTemp(target.getLocNo());//全部待机位
                    break;
                default:
                    break;
            }
            if (target.getSync() != null) {
                motion.setSync(target.getSync());
            }
            if (target.getReleaseShuttle() != null) {
                motion.setReleaseShuttle(target.getReleaseShuttle());
            }
            if (target.getReleaseLift() != null) {
                motion.setReleaseLift(target.getReleaseLift());
            }
        }));
@@ -432,4 +459,40 @@
        return motionList;
    }
    // Map -----------------------------------------------------------------------------
    /**
     * 地图路径锁定
     */
    public List<Motion> mapLockPath(MotionDto origin, MotionDto target) {
        List<Motion> motionList = new ArrayList<>();
        motionList.add(Motion.build(motion -> {
            motion.setDeviceCtg(DeviceCtgType.MAP.val());
            motion.setDevice(String.valueOf(target.getShuttleNo()));
            motion.setMotionCtg(MotionCtgType.MAP_LOCK_PATH.val());
            motion.setTarget(target.getLocNo());
        }));
        return motionList;
    }
    /**
     * 地图路径解锁
     */
    public List<Motion> mapUnlockPath(MotionDto origin, MotionDto target) {
        List<Motion> motionList = new ArrayList<>();
        motionList.add(Motion.build(motion -> {
            motion.setDeviceCtg(DeviceCtgType.MAP.val());
            motion.setDevice(String.valueOf(target.getShuttleNo()));
            motion.setMotionCtg(MotionCtgType.MAP_UNLOCK_PATH.val());
            motion.setTarget(target.getLocNo());
        }));
        return motionList;
    }
}