From 0a6532305b842185c85afd4e8c670f64700f2a6d Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期三, 28 八月 2024 17:03:54 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java | 390 +++++++++++++++++-------------------------------------- 1 files changed, 123 insertions(+), 267 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java index 164e30b..bfa0d2c 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/AnalyzeService.java @@ -1,8 +1,6 @@ package com.zy.asrs.wcs.core.kernel; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.zy.asrs.framework.common.Cools; -import com.zy.asrs.framework.common.R; import com.zy.asrs.wcs.core.domain.dto.MotionDto; import com.zy.asrs.wcs.core.entity.*; import com.zy.asrs.wcs.core.model.enums.DeviceCtgType; @@ -26,7 +24,9 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * 1.鍏呯數浠诲姟锛�2.搴撲綅绉昏浆锛�3.灏忚溅杩佺Щ锛�4.鎵嬪姩浠诲姟 @@ -54,7 +54,20 @@ @Autowired private BasConveyorPathService basConveyorPathService; @Autowired + private BasConveyorStaService basConveyorStaService; + @Autowired + private BasConveyorService basConveyorService; + @Autowired private TaskCtgService taskCtgService; + + public Integer getStaByLev(Integer lev) { + HashMap<Integer, Integer> map = new HashMap<>(); + map.put(1, 31006); + map.put(2, 31007); + map.put(3, 31008); + + return map.get(lev); + } public List<Motion> generateMotion(Task task) { List<Motion> motionList = new ArrayList<>(); @@ -67,12 +80,6 @@ /** * 鍏ュ簱 - * 涓�銆佸叆搴撶洰鏍囧眰鏈夌┛姊溅 - * 1.鎻愬崌鏈哄崌闄嶅埌婧愬眰 - * 2.璐х墿浠庤緭閫佺嚎鍒版彁鍗囨満 - * 3.鎻愬崌鏈鸿浇璐хЩ鍔紙闈炲繀闇�锛� - * 4.绌挎杞﹁蛋琛岃嚦鎻愬崌鏈� - * 5.绌挎杞﹀叆搴撹嚦鐩爣搴撲綅 */ if (task.getTaskSts() == TaskStsType.NEW_INBOUND.sts) { // locNo @@ -110,16 +117,14 @@ return motionList; } - //妫�娴嬬┛姊溅鏄惁鏈変换鍔$粦瀹� - boolean shuttleResult = Utils.checkShuttleHasBinding(shuttleDevice, task.getTaskNo()); - if (shuttleResult) { - //瀛樺湪浠诲姟锛岀姝㈣В鏋� + BasConveyorSta basConveyorStaDest = basConveyorStaService.selectBySiteNo(task.getDestSite()); + if (basConveyorStaDest == null) { return motionList; } - //妫�娴嬫彁鍗囨満鏄惁鏈変换鍔$粦瀹� - boolean liftResult = Utils.checkLiftHasBinding(Integer.parseInt(transferLiftDevice.getDeviceNo())); - if (liftResult) { + //妫�娴嬬┛姊溅鏄惁鏈変换鍔$粦瀹� + boolean shuttleResult = Utils.checkShuttleHasBinding(shuttleDevice, task.getTaskNo()); + if (shuttleResult) { //瀛樺湪浠诲姟锛岀姝㈣В鏋� return motionList; } @@ -158,13 +163,15 @@ motionList.addAll(kernelService.liftMoveGoods( MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(5);//绱㈢墝椤圭洰5灞傛槸杈撻�佺嚎灞� - dto.setStaNo(1);//鎻愬崌鏈哄乏渚� + dto.setLev(1);//鍏夋嘲1灞傛槸杈撻�佺嚎灞� + dto.setStaNo(31004);//鍏ュ簱绔欑偣 })) , MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); dto.setLev(Utils.getLev(task.getDestLoc())); - dto.setStaNo(0);//鎻愬崌鏈哄唴渚� + dto.setStaNo(getStaByLev(Utils.getLev(task.getDestLoc()))); + dto.setDevpNo(basConveyorStaDest.getConveyorDeviceId().intValue()); +// dto.setSync();//寮傛鎵ц })) )); @@ -176,32 +183,9 @@ })), MotionDto.build((dto -> { dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); dto.setLocNo(standbyLocNoTo); })), MotionCtgType.SHUTTLE_MOVE - )); - - // 閿佸畾鎻愬崌鏈� - motionList.addAll(kernelService.liftLock( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - })) - )); - - // 绌挎杞﹀緟鏈轰綅鑷虫彁鍗囨満 - motionList.addAll(kernelService.shuttleMove( - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLocNo(standbyLocNoTo); - })), - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLocNo(liftLocNoTo); - })), - MotionCtgType.SHUTTLE_MOVE_TO_LIFT )); // 绌挎杞﹀叆搴撻《鍗� @@ -211,28 +195,6 @@ dto.setShuttleNo(shuttleDevice.getId().intValue()); })), MotionCtgType.SHUTTLE_PALLET_LIFT - )); - - // 绌挎杞﹀叆搴撶Щ鍔ㄨ嚦鎻愬崌鏈哄緟鏈轰綅 - motionList.addAll(kernelService.shuttleMove( - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLocNo(liftLocNoFrom); - })), - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLocNo(standbyLocNoFrom); - })), - MotionCtgType.SHUTTLE_MOVE_FROM_LIFT - )); - - // 瑙i攣鎻愬崌鏈� - motionList.addAll(kernelService.liftUnlock( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - })) )); // 绌挎杞﹁蛋琛岃嚦鐩爣搴撲綅 @@ -260,14 +222,23 @@ /** * 浜屻�佸叆搴撶洰鏍囧眰娌℃湁绌挎杞� - * 1.鎻愬崌鏈哄崌闄嶅埌绌挎杞﹀眰 - * 2.绌挎杞﹁蛋琛岃嚦鎻愬崌鏈哄緟鏈轰綅 - * 3.鎻愬崌鏈烘惉杩愮┛姊溅鑷崇洰鏍囧眰 - * 4.璐х墿浠庤緭閫佺嚎鍒版彁鍗囨満 - * 5.鎻愬崌鏈鸿浇杞︿笌璐хЩ鍔紙闈炲繀闇�锛� - * 6.绌挎杞﹀叆搴撹嚦鐩爣搴撲綅 */ } else { + + // 鎻愬崌鏈鸿浇璐хЩ鍔� + motionList.addAll(kernelService.liftMoveGoods( + MotionDto.build((dto -> { + dto.setLiftNo(transferLiftDevice.getId().intValue()); + dto.setLev(1);//鍏夋嘲1灞傛槸杈撻�佺嚎灞� + dto.setStaNo(31004);//鍏ュ簱绔欑偣 + })) + , MotionDto.build((dto -> { + dto.setLiftNo(transferLiftDevice.getId().intValue()); + dto.setLev(Utils.getLev(task.getDestLoc())); + dto.setStaNo(getStaByLev(Utils.getLev(task.getDestLoc()))); + dto.setDevpNo(basConveyorStaDest.getConveyorDeviceId().intValue()); + })) + )); // 绌挎杞﹁蛋琛岃嚦鎻愬崌鏈哄簱浣嶅緟鏈轰綅 motionList.addAll(kernelService.shuttleMove( @@ -322,17 +293,15 @@ })) )); - // 鎻愬崌鏈鸿浇璐хЩ鍔� - motionList.addAll(kernelService.liftMoveGoods( + // 鎻愬崌鏈烘惉杞� 鑷� 鐩爣浣嶇疆灞� + motionList.addAll(kernelService.liftMoveShuttle( MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(5);//绱㈢墝椤圭洰5灞傛槸杈撻�佺嚎灞� - dto.setStaNo(1);//鎻愬崌鏈哄乏渚� - })) - , MotionDto.build((dto -> { + dto.setLev(Utils.getLev(shuttleLocNo)); + })), + MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(Utils.getLev(task.getDestLoc())); - dto.setStaNo(0);//鎻愬崌鏈哄唴渚� + dto.setLev(Utils.getLev(destLoc)); })) )); @@ -344,15 +313,6 @@ })) )); - // 绌挎杞﹀叆搴撻《鍗� - motionList.addAll(kernelService.shuttleAction( - null, - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - })), - MotionCtgType.SHUTTLE_PALLET_LIFT - )); - // 鏇存柊灏忚溅鍧愭爣 motionList.addAll(kernelService.shuttleUpdateLocation( null @@ -362,7 +322,7 @@ })) )); - // 绌挎杞﹀叆搴撶Щ鍔ㄨ嚦鎻愬崌鏈哄緟鏈轰綅 + // 绌挎杞︾Щ鍔ㄨ嚦鎻愬崌鏈哄緟鏈轰綅 motionList.addAll(kernelService.shuttleMove( MotionDto.build((dto -> { dto.setShuttleNo(shuttleDevice.getId().intValue()); @@ -381,7 +341,17 @@ null , MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); + dto.setReleaseLift(1);//鎵ц瀹屾垚鍚庨噴鏀炬彁鍗囨満 })) + )); + + // 绌挎杞﹀叆搴撻《鍗� + motionList.addAll(kernelService.shuttleAction( + null, + MotionDto.build((dto -> { + dto.setShuttleNo(shuttleDevice.getId().intValue()); + })), + MotionCtgType.SHUTTLE_PALLET_LIFT )); // 绌挎杞﹁蛋琛岃嚦鐩爣搴撲綅 @@ -450,16 +420,14 @@ return motionList; } - //妫�娴嬬┛姊溅鏄惁鏈変换鍔$粦瀹� - boolean shuttleResult = Utils.checkShuttleHasBinding(shuttleDevice, task.getTaskNo()); - if (shuttleResult) { - //瀛樺湪浠诲姟锛岀姝㈣В鏋� + BasConveyorSta basConveyorStaOrigin = basConveyorStaService.selectBySiteNo(task.getOriginSite()); + if (basConveyorStaOrigin == null) { return motionList; } - //妫�娴嬫彁鍗囨満鏄惁鏈変换鍔$粦瀹� - boolean liftResult = Utils.checkLiftHasBinding(Integer.parseInt(transferLiftDevice.getDeviceNo())); - if (liftResult) { + //妫�娴嬬┛姊溅鏄惁鏈変换鍔$粦瀹� + boolean shuttleResult = Utils.checkShuttleHasBinding(shuttleDevice, task.getTaskNo()); + if (shuttleResult) { //瀛樺湪浠诲姟锛岀姝㈣В鏋� return motionList; } @@ -512,13 +480,6 @@ /** * 鍑哄簱 - * 涓�銆佸嚭搴撹捣濮嬪眰鏈夌┛姊溅 - * 1.绌挎杞﹁蛋琛岃嚦鍑哄簱搴撲綅 - * 2.鎻愬崌鏈哄埌鍑哄簱璧峰灞� - * 3.绌挎杞﹀嚭搴撹嚦鎻愬崌鏈� - * 4.绌挎杞︾寮�鎻愬崌鏈� - * 5.鎻愬崌鏈鸿浇璐хЩ鍔紙闈炲繀闇�锛� - * 6.杈撻�佺嚎杩愯緭鑷冲嚭搴撳彛 */ if (Utils.getLev(shuttleLocNo) == Utils.getLev(originLoc)) { @@ -561,37 +522,6 @@ MotionCtgType.SHUTTLE_MOVE )); - // 鎻愬崌鏈虹┖杞界Щ鍔ㄥ埌绌挎杞﹀眰 - motionList.addAll(kernelService.liftMove( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(Utils.getLev(shuttleLocNo)); - })) - )); - - // 閿佸畾鎻愬崌鏈� - motionList.addAll(kernelService.liftLock( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - })) - )); - - // 绌挎杞﹀緟鏈轰綅鑷虫彁鍗囨満 - motionList.addAll(kernelService.shuttleMove( - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLocNo(standbyLocNoTo); - })), - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLocNo(liftLocNoTo); - })), - MotionCtgType.SHUTTLE_MOVE_TO_LIFT - )); - // 绌挎杞﹀嚭搴撴墭鐩樹笅闄� motionList.addAll(kernelService.shuttleAction( null, @@ -601,40 +531,20 @@ MotionCtgType.SHUTTLE_PALLET_DOWN )); - // 绌挎杞︾寮�鎻愬崌鏈� - 鍒版彁鍗囨満寰呮満浣� - motionList.addAll(kernelService.shuttleMove( - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLocNo(liftLocNoFrom); - })), - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLocNo(standbyLocNoFrom); - })), - MotionCtgType.SHUTTLE_MOVE_FROM_LIFT - )); - - // 瑙i攣鎻愬崌鏈� - motionList.addAll(kernelService.liftUnlock( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - })) - )); - // 鎻愬崌鏈鸿浇璐хЩ鍔� motionList.addAll(kernelService.liftMoveGoods( MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); dto.setLev(Utils.getLev(task.getOriginLoc())); - dto.setStaNo(0);//鎻愬崌鏈哄唴渚� + dto.setStaNo(getStaByLev(Utils.getLev(task.getOriginLoc())));//璧峰绔欑偣 })) , MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(5);//绱㈢墝椤圭洰5灞傛槸杈撻�佺嚎灞� - dto.setStaNo(1);//鎻愬崌鏈哄乏渚� + dto.setLev(1);//鍏夋嘲1灞傛槸杈撻�佺嚎灞� + dto.setStaNo(31001);//鍑哄簱绔欑偣 + dto.setDevpNo(basConveyorStaOrigin.getConveyorDeviceId().intValue()); dto.setSync(0);//寮傛鎵ц + dto.setReleaseLift(1);//鎵ц瀹屾垚鍚庨噴鏀炬彁鍗囨満 })) )); @@ -652,30 +562,20 @@ )); // 杈撻�佺嚎杩愯緭鑷冲嚭搴撳彛 - motionList.addAll(kernelService.conveyorOutbound( - MotionDto.build((dto -> { - dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); - dto.setStaNo(basConveyorPath.getDeviceStn()); - })), - MotionDto.build((dto -> { - dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); - dto.setStaNo(basConveyorPath.getStnNo()); - })), - MotionCtgType.CONVEYOR_OUTBOUND - )); +// motionList.addAll(kernelService.conveyorOutbound( +// MotionDto.build((dto -> { +// dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); +// dto.setStaNo(basConveyorPath.getDeviceStn()); +// })), +// MotionDto.build((dto -> { +// dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); +// dto.setStaNo(basConveyorPath.getStnNo()); +// })), +// MotionCtgType.CONVEYOR_OUTBOUND +// )); /** * 浜屻�佸嚭搴撹捣濮嬪眰娌℃湁绌挎杞� - * - * 1.鎻愬崌鏈哄埌绌挎杞﹀眰 - * 2.绌挎杞﹁蛋琛岃嚦鎻愬崌鏈� - * 3.鎻愬崌鏈鸿浇杞﹁嚦鍑哄簱璧峰灞� - * 4.绌挎杞﹁蛋琛岃嚦鍑哄簱搴撲綅 - * 5.绌挎杞﹀嚭搴撹嚦鎻愬崌鏈� - * 6.绌挎杞︾寮�鎻愬崌鏈� - * 7.鎻愬崌鏈鸿浇璐хЩ鍔紙闈炲繀闇�锛� - * 8.杈撻�佺嚎杩愯緭鑷冲嚭搴撳彛 - * */ } else { @@ -780,6 +680,7 @@ null , MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); + dto.setReleaseLift(1);//鎵ц瀹屾垚鍚庨噴鏀炬彁鍗囨満 })) )); @@ -820,37 +721,6 @@ MotionCtgType.SHUTTLE_MOVE )); - // 鎻愬崌鏈虹┖杞界Щ鍔ㄥ埌鐩爣灞� - motionList.addAll(kernelService.liftMove( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(Utils.getLev(originLoc)); - })) - )); - - // 閿佸畾鎻愬崌鏈� - motionList.addAll(kernelService.liftLock( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - })) - )); - - // 绌挎杞﹀緟鏈轰綅鑷虫彁鍗囨満 - motionList.addAll(kernelService.shuttleMove( - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLocNo(standbyLocNoFrom); - })), - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLocNo(liftLocNoFrom); - })), - MotionCtgType.SHUTTLE_MOVE_TO_LIFT - )); - // 绌挎杞﹀嚭搴撴墭鐩樹笅闄� motionList.addAll(kernelService.shuttleAction( null, @@ -860,40 +730,20 @@ MotionCtgType.SHUTTLE_PALLET_DOWN )); - // 绌挎杞︾寮�鎻愬崌鏈� - 鍒版彁鍗囨満寰呮満浣� - motionList.addAll(kernelService.shuttleMove( - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLocNo(liftLocNoFrom); - })), - MotionDto.build((dto -> { - dto.setShuttleNo(shuttleDevice.getId().intValue()); - dto.setLocNo(standbyLocNoFrom); - })), - MotionCtgType.SHUTTLE_MOVE_FROM_LIFT - )); - - // 瑙i攣鎻愬崌鏈� - motionList.addAll(kernelService.liftUnlock( - null - , MotionDto.build((dto -> { - dto.setLiftNo(transferLiftDevice.getId().intValue()); - })) - )); - // 鎻愬崌鏈鸿浇璐хЩ鍔� motionList.addAll(kernelService.liftMoveGoods( MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); dto.setLev(Utils.getLev(task.getOriginLoc())); - dto.setStaNo(0);//鎻愬崌鏈哄唴渚� + dto.setStaNo(getStaByLev(Utils.getLev(task.getOriginLoc())));//璧峰绔欑偣 })) , MotionDto.build((dto -> { dto.setLiftNo(transferLiftDevice.getId().intValue()); - dto.setLev(5);//绱㈢墝椤圭洰5灞傛槸杈撻�佺嚎灞� - dto.setStaNo(1);//鎻愬崌鏈哄乏渚� + dto.setLev(1);//鍏夋嘲1灞傛槸杈撻�佺嚎灞� + dto.setStaNo(31001);//鍑哄簱绔欑偣 dto.setSync(0);//寮傛鎵ц + dto.setDevpNo(basConveyorStaOrigin.getConveyorDeviceId().intValue()); + dto.setReleaseLift(1);//鎵ц瀹屾垚鍚庨噴鏀炬彁鍗囨満 })) )); @@ -911,17 +761,17 @@ )); // 杈撻�佺嚎杩愯緭鑷冲嚭搴撳彛 - motionList.addAll(kernelService.conveyorOutbound( - MotionDto.build((dto -> { - dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); - dto.setStaNo(basConveyorPath.getDeviceStn()); - })), - MotionDto.build((dto -> { - dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); - dto.setStaNo(basConveyorPath.getStnNo()); - })), - MotionCtgType.CONVEYOR_OUTBOUND - )); +// motionList.addAll(kernelService.conveyorOutbound( +// MotionDto.build((dto -> { +// dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); +// dto.setStaNo(basConveyorPath.getDeviceStn()); +// })), +// MotionDto.build((dto -> { +// dto.setDevpNo(basConveyorPath.getDeviceId().intValue()); +// dto.setStaNo(basConveyorPath.getStnNo()); +// })), +// MotionCtgType.CONVEYOR_OUTBOUND +// )); } @@ -978,13 +828,6 @@ //妫�娴嬬┛姊溅鏄惁鏈変换鍔$粦瀹� boolean shuttleResult = Utils.checkShuttleHasBinding(shuttleDevice, task.getTaskNo()); if (shuttleResult) { - //瀛樺湪浠诲姟锛岀姝㈣В鏋� - return motionList; - } - - //妫�娴嬫彁鍗囨満鏄惁鏈変换鍔$粦瀹� - boolean liftResult = Utils.checkLiftHasBinding(Integer.parseInt(transferLiftDevice.getDeviceNo())); - if (liftResult) { //瀛樺湪浠诲姟锛岀姝㈣В鏋� return motionList; } @@ -1150,8 +993,6 @@ MotionCtgType.SHUTTLE_MOVE )); - task.setLiftNo(Integer.parseInt(transferLiftDevice.getDeviceNo())); - taskService.updateById(task); } // 绌挎杞﹀紑濮嬪厖鐢� @@ -1343,14 +1184,6 @@ MotionCtgType.SHUTTLE_MOVE_TO_LIFT )); - // 鍚戞彁鍗囨満鍙戦�佸皬杞﹀凡鍒颁綅淇″彿 - motionList.addAll(kernelService.liftShuttleArrival( - null - , MotionDto.build((dto -> { - dto.setLiftNo(liftDevice.getId().intValue()); - })) - )); - // 瑙i攣鎻愬崌鏈� motionList.addAll(kernelService.liftUnlock( null @@ -1439,7 +1272,7 @@ String sourceLoc = task.getOriginLoc();//婧愬簱浣� String targetLoc = task.getDestLoc();//浠诲姟鐩爣(鍊熺敤瀛楁) - String targetSite = task.getDestSite();//浠诲姟绫诲瀷(鍊熺敤瀛楁) + String targetSite = task.getMemo();//浠诲姟绫诲瀷(鍊熺敤瀛楁) Device device = deviceService.getOne(new LambdaQueryWrapper<Device>() .eq(Device::getDeviceNo, task.getShuttleNo()) @@ -1583,7 +1416,8 @@ return motionList; } - if (task.getDestSite().equals("move")) { + String destSite = task.getMemo();//浠诲姟鐩爣(鍊熺敤瀛楁) + if (destSite.equals("move")) { //鎻愬崌鏈哄崌闄嶆ゼ灞� // 鎻愬崌鏈虹┖杞界Щ鍔ㄥ埌绌挎杞﹀眰 @@ -1595,23 +1429,45 @@ })) )); - } else if (task.getDestSite().equals("movePallet")) { + } else if (destSite.equals("movePallet")) { //绉诲姩鎵樼洏 + BasConveyorSta basConveyorStaOrigin = basConveyorStaService.selectBySiteNo(task.getOriginSite()); + BasConveyorSta basConveyorStaDest = basConveyorStaService.selectBySiteNo(task.getDestSite()); + if(basConveyorStaOrigin == null || basConveyorStaDest == null) { + return motionList; + } // 鎻愬崌鏈虹Щ鍔ㄦ墭鐩� motionList.addAll(kernelService.liftMoveGoods( MotionDto.build((dto -> { dto.setLiftNo(device.getId().intValue()); - dto.setLev(Integer.parseInt(task.getOriginLoc())); + dto.setLev(Utils.getLev(basConveyorStaOrigin.getLocNo())); dto.setStaNo(Integer.parseInt(task.getOriginSite())); })) , MotionDto.build((dto -> { dto.setLiftNo(device.getId().intValue()); - dto.setLev(Integer.parseInt(task.getDestLoc())); + dto.setLev(Utils.getLev(basConveyorStaDest.getLocNo())); + dto.setDevpNo(basConveyorStaDest.getConveyorDeviceId().intValue()); dto.setStaNo(Integer.parseInt(task.getDestSite())); })) )); + } else if (destSite.equals("lock")) { + // 閿佸畾鎻愬崌鏈� + motionList.addAll(kernelService.liftLock( + null + , MotionDto.build((dto -> { + dto.setLiftNo(device.getId().intValue()); + })) + )); + } else if (destSite.equals("unlock")) { + // 瑙i攣鎻愬崌鏈� + motionList.addAll(kernelService.liftUnlock( + null + , MotionDto.build((dto -> { + dto.setLiftNo(device.getId().intValue()); + })) + )); } return motionList; -- Gitblit v1.9.1