From cfb75c26838c2e8dacf663e4083484f3b1047ca1 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期四, 06 四月 2023 16:57:47 +0800 Subject: [PATCH] 四向穿梭车地图楼层切换后,显示楼层效果 --- src/main/java/com/zy/asrs/controller/ShuttleController.java | 42 ++++++++++++++++++++++++++---------------- 1 files changed, 26 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/ShuttleController.java b/src/main/java/com/zy/asrs/controller/ShuttleController.java index 839572d..ef3f912 100644 --- a/src/main/java/com/zy/asrs/controller/ShuttleController.java +++ b/src/main/java/com/zy/asrs/controller/ShuttleController.java @@ -9,9 +9,14 @@ import com.zy.asrs.domain.param.ShuttleOperatorParam; import com.zy.asrs.domain.vo.*; import com.zy.asrs.entity.BasShuttle; +import com.zy.asrs.entity.LocMast; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.BasShuttleService; +import com.zy.asrs.service.LocMastService; import com.zy.asrs.service.WrkMastService; +import com.zy.asrs.utils.Utils; +import com.zy.common.utils.NavigatePositionConvert; +import com.zy.common.utils.NavigateUtils; import com.zy.core.cache.MessageQueue; import com.zy.core.cache.OutputQueue; import com.zy.core.cache.SlaveConnection; @@ -30,7 +35,6 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.Random; /** * 鍥涘悜绌挎杞︽帴鍙� @@ -46,6 +50,8 @@ private BasShuttleService basShuttleService; @Autowired private WrkMastService wrkMastService; + @Autowired + private LocMastService locMastService; @PostMapping("/table/shuttle/state") @ManagerAuth(memo = "鍥涘悜绌挎杞︿俊鎭〃") @@ -70,6 +76,12 @@ vo.setBusyStatus(shuttleProtocol.getBusyStatusType().desc); //鍥涘悜绌挎杞︾姸鎬� vo.setStatus(shuttleProtocol.getProtocolStatusType().desc);//褰撳墠浠诲姟鐘舵�� vo.setCurrentCode(shuttleProtocol.getCurrentCode());//褰撳墠浜岀淮鐮� + LocMast currentLocMast = locMastService.queryByQrCode(shuttleProtocol.getCurrentCode().toString()); + vo.setLocNo(currentLocMast.getLocNo());//鑾峰彇褰撳墠搴撲綅鍙� + int[] locNoXY = NavigatePositionConvert.positionToXY(currentLocMast.getLocNo());//鑾峰彇搴撲綅鍙稾Y鍧愭爣 + vo.setLocNoX(locNoXY[0]); + vo.setLocNoY(locNoXY[1]); + vo.setLocNoLev(Utils.getLev(currentLocMast.getLocNo()));//褰撳墠搴撲綅灞傞珮 vo.setBatteryPower(shuttleProtocol.getBatteryPower$() == null ? "" : shuttleProtocol.getBatteryPower$() + "%");//鐢垫睜鐢甸噺 vo.setBatteryTemp(shuttleProtocol.getBatteryTemp$() == null ? "" : shuttleProtocol.getBatteryTemp$() + "掳");//鐢垫睜娓╁害 if (!Cools.isEmpty(shuttleProtocol.getErrorCode())) { @@ -164,9 +176,6 @@ vo.setShuttleNo(shuttleSlave.getId()); BasShuttle basShuttle = basShuttleService.selectById(shuttleSlave.getId()); if (!Cools.isEmpty(basShuttle)) { - vo.setRow(basShuttle.getRow()); - vo.setBay(basShuttle.getBay()); - vo.setLev(basShuttle.getLev()); vo.setWorkNo(basShuttle.getWrkNo()); vo.setPakMk(basShuttle.getPakMk()); } @@ -228,9 +237,6 @@ } else { throw new CoolException("鍛戒护涓嬪彂澶辫触"); } - basShuttle.setRow(vo.getRow()); - basShuttle.setBay(vo.getBay()); - basShuttle.setLev(vo.getLev()); basShuttle.setPakMk(vo.getPakMk()); basShuttle.setWrkNo(vo.getWorkNo()); @@ -252,8 +258,14 @@ return R.parse(BaseRes.PARAM); } - if (Cools.isEmpty(param.getSourceLocNo(), param.getDistLocNo())) { - return R.parse(BaseRes.PARAM); + ShuttleAssignCommand assignCommand = new ShuttleAssignCommand(); + + if (param.getShuttleTaskMode() == 1 || param.getShuttleTaskMode() == 2) { + if (Cools.isEmpty(param.getSourceLocNo(), param.getDistLocNo())) { + return R.parse(BaseRes.PARAM); + } + assignCommand.setSourceLocNo(param.getSourceLocNo()); + assignCommand.setLocNo(param.getDistLocNo()); } for (ShuttleSlave shuttleSlave : slaveProperties.getShuttle()) { @@ -268,14 +280,12 @@ } ShuttleTaskModeType shuttleTaskModeType = ShuttleTaskModeType.get(param.getShuttleTaskMode()); - ShuttleAssignCommand command = new ShuttleAssignCommand(); - command.setShuttleNo(shuttleSlave.getId().shortValue()); // 鍥涘悜绌挎杞︾紪鍙� - command.setTaskMode(shuttleTaskModeType.id.shortValue()); - command.setSourceLocNo(param.getSourceLocNo()); - command.setDistLocNo(param.getDistLocNo()); - command.setTaskNo((short) 9999); + assignCommand.setShuttleNo(shuttleSlave.getId().shortValue()); // 鍥涘悜绌挎杞︾紪鍙� + assignCommand.setTaskMode(shuttleTaskModeType.id.shortValue()); + assignCommand.setTaskNo((short) 9999); + assignCommand.setAuto(false);//鎵嬪姩妯″紡 - if (MessageQueue.offer(SlaveType.Shuttle, shuttleSlave.getId(), new Task(3, command))) { + if (MessageQueue.offer(SlaveType.Shuttle, shuttleSlave.getId(), new Task(3, assignCommand))) { return R.ok(); } else { throw new CoolException("鍛戒护涓嬪彂澶辫触"); -- Gitblit v1.9.1