#
Junjie
2024-09-26 a032e83b86f182f2939454949129adfece45ebed
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/KernelService.java
@@ -55,13 +55,15 @@
                motion.setOrigin(String.valueOf(liftDispatcher.getLiftLevOffset(target.getLiftNo(), origin.getLev())));
            }
            motion.setTarget(String.valueOf(liftDispatcher.getLiftLevOffset(target.getLiftNo(), target.getLev())));
        }));
//        if (target.getUpdateLiftNo() != null && target.getWrkNo() != null) {
//            if (target.getUpdateLiftNo()) {
//
//            }
//        }
            if (target.getSync() != null) {
                motion.setSync(target.getSync());
            }
            if (target.getReleaseLift() != null) {
                motion.setReleaseLift(target.getReleaseLift());
            }
        }));
        return motionList;
    }
@@ -87,6 +89,10 @@
            if (target.getSync() != null) {
                motion.setSync(target.getSync());
            }
            if (target.getReleaseLift() != null) {
                motion.setReleaseLift(target.getReleaseLift());
            }
        }));
@@ -166,6 +172,14 @@
            motion.setDeviceCtg(DeviceCtgType.LIFT.val());
            motion.setDevice(String.valueOf(target.getLiftNo()));
            motion.setMotionCtg(MotionCtgType.LIFT_LOCK.val());
            if (target.getSync() != null) {
                motion.setSync(target.getSync());
            }
            if (target.getReleaseLift() != null) {
                motion.setReleaseLift(target.getReleaseLift());
            }
        }));
        return motionList;
@@ -181,6 +195,14 @@
            motion.setDeviceCtg(DeviceCtgType.LIFT.val());
            motion.setDevice(String.valueOf(target.getLiftNo()));
            motion.setMotionCtg(MotionCtgType.LIFT_UNLOCK.val());
            if (target.getSync() != null) {
                motion.setSync(target.getSync());
            }
            if (target.getReleaseLift() != null) {
                motion.setReleaseLift(target.getReleaseLift());
            }
        }));
        return motionList;
@@ -331,23 +353,15 @@
                case SHUTTLE_PALLET_DOWN://托盘下降
                    break;
                case SHUTTLE_CHARGE_ON://充电开
                    break;
                case SHUTTLE_CHARGE_OFF://充电关
                    break;
                default:
                    break;
            }
        }));
        return motionList;
    }
    public List<Motion> shuttleCharge(MotionDto origin, MotionDto target) {
        List<Motion> motionList = new ArrayList<>();
        motionList.add(Motion.build(motion -> {
            motion.setDeviceCtg(DeviceCtgType.SHUTTLE.val());
            motion.setDevice(String.valueOf(target.getShuttleNo()));
            motion.setMotionCtg(MotionCtgType.SHUTTLE_CHARGE_ON.val());
        }));
@@ -417,4 +431,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;
    }
}