#
zjj
2025-04-08 3df03c486fde77ab36b9298a94bdbb0aa065a7e2
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/LiftDispatcher.java
@@ -78,6 +78,13 @@
            }
            String liftLocNo = Utils.getLocNo(Utils.getRow(standby.getDeviceStandbyLoc()), Utils.getBay(standby.getDeviceStandbyLoc()), Utils.getLev(locNo));
            if (locNo.equals(liftLocNo)) {
                finalDistance = 100;
                recentLiftThread = liftThread;
                continue;
            }
            List<NavigateNode> nodeList = navigateUtils.calc(locNo, liftLocNo, NavigationMapType.NONE.id, null);
            if (nodeList == null) {
                continue;
@@ -201,15 +208,15 @@
        return standby.getLockPath$();
    }
    public Integer getLiftLevOffset(Integer deviceId,Integer lev) {
    public Integer getLiftLevOffset(Integer deviceId, Integer lev) {
        BasLift basLift = basLiftService.getOne(new LambdaQueryWrapper<BasLift>().eq(BasLift::getDeviceId, deviceId));
        if (basLift != null) {
            if(Cools.isEmpty(basLift.getLevOffset())) {
            if (Cools.isEmpty(basLift.getLevOffset())) {
                return lev;
            }
            List<BasLiftLevOffsetDto> levOffsetDtos = JSON.parseArray(basLift.getLevOffset(), BasLiftLevOffsetDto.class);
            for (BasLiftLevOffsetDto offsetDto : levOffsetDtos) {
                if(lev == offsetDto.getLogicLev()){
                if (lev.equals(offsetDto.getLogicLev())) {
                    return offsetDto.getRealLev();
                }
            }
@@ -217,4 +224,20 @@
        return lev;
    }
    public Integer getLiftLevLogic(Integer deviceId, Integer lev) {
        BasLift basLift = basLiftService.getOne(new LambdaQueryWrapper<BasLift>().eq(BasLift::getDeviceId, deviceId));
        if (basLift != null) {
            if (Cools.isEmpty(basLift.getLevOffset())) {
                return lev;
            }
            List<BasLiftLevOffsetDto> levOffsetDtos = JSON.parseArray(basLift.getLevOffset(), BasLiftLevOffsetDto.class);
            for (BasLiftLevOffsetDto offsetDto : levOffsetDtos) {
                if (lev.equals(offsetDto.getRealLev())) {
                    return offsetDto.getLogicLev();
                }
            }
        }
        return lev;
    }
}