From b7951bdbb8925131cbc76be4902fcef0e88d0506 Mon Sep 17 00:00:00 2001 From: ytfl <ytfl@qq.com> Date: 星期二, 19 八月 2025 18:22:03 +0800 Subject: [PATCH] #自动获取电视机配置信息 --- src/main/java/com/zy/asrs/controller/CrnController.java | 134 +++++++++++++++++++++++++++++--------------- 1 files changed, 87 insertions(+), 47 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java index 52fadad..dd358b1 100644 --- a/src/main/java/com/zy/asrs/controller/CrnController.java +++ b/src/main/java/com/zy/asrs/controller/CrnController.java @@ -35,6 +35,8 @@ import com.zy.core.model.protocol.CrnProtocol; import com.zy.core.properties.SlaveProperties; import com.zy.core.properties.SystemProperties; +import com.zy.system.entity.Config; +import com.zy.system.service.ConfigService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -68,6 +70,8 @@ private MainServiceImpl mainService; @Autowired private LocMastService locMastService; + @Autowired + private ConfigService configService; @ManagerAuth(memo = "杩涜涓殑鍛戒护") @@ -138,6 +142,16 @@ @PostMapping("/table/crn/msg") @ManagerAuth(memo = "鍫嗗灈鏈烘暟鎹〃") public R crnMsgTable(){ + Config crnSearchDetectTaskCountConfig = configService.selectOne(new EntityWrapper<Config>() + .eq("code", "crnSearchDetectTaskCount") + ); + int crnSearchDetectTaskCount = Integer.parseInt(crnSearchDetectTaskCountConfig.getValue()); + + Config applyInTaskTotalCountConfig = configService.selectOne(new EntityWrapper<Config>() + .eq("code", "applyInTaskTotalCount") + ); + int applyInTaskTotalCount = Integer.parseInt(applyInTaskTotalCountConfig.getValue()); + List<CrnMsgTableVo> list = new ArrayList<>(); List<BasCrnp> crnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().orderBy("crn_no")); for (BasCrnp basCrnp : crnps) { @@ -175,6 +189,20 @@ vo.setYdistance(crnProtocol.getYDistance()); // 鍗囬檷璺濈(Km) vo.setXduration(crnProtocol.getXDuration()); // 璧拌鏃堕暱(H) vo.setYduration(crnProtocol.getYDuration()); // 鍗囬檷鏃堕暱(H) + vo.setCrnSearchDetectTaskCount(crnSearchDetectTaskCount); + vo.setApplyInTaskTotalCount(applyInTaskTotalCount); + + List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>() + .eq("crn_no", basCrnp.getCrnNo()) + .in("io_type", 1, 10, 53, 57) + ); + vo.setCurrentInTask(inWrkMasts.size()); + + List<WrkMast> wrkMastsList = wrkMastService.selectList(new EntityWrapper<WrkMast>() + .eq("crn_no", basCrnp.getCrnNo()) + .in("io_type", 1, 10, 53, 57, 101, 103, 107, 110) + ); + vo.setCurrentTotalTask(wrkMastsList.size()); } return R.ok().add(list); } @@ -307,57 +335,58 @@ return crnControl(command)?R.ok():R.error(); } - @ManagerAuth(memo = "鍥炲師鐐�") - @PostMapping("/operator/bacOrigin") - public R crnBacOrigin(CrnOperatorParam param){ - CrnCommand command = new CrnCommand(); - command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙� - command.setTaskNo((short) 0); // 宸ヤ綔鍙� - command.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� - command.setTaskMode(CrnTaskModeType.GO_ORIGIN); // 浠诲姟妯″紡 - command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓 - command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪 - command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰 - command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺� - command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒� - command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞� - return crnControl(command)?R.ok():R.error(); - } - - @ManagerAuth(memo = "鍙嶅師鐐�") - @PostMapping("/operator/reverseOrigin") - public R reverseOrigin(CrnOperatorParam param){ - CrnCommand command = new CrnCommand(); - command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙� - command.setTaskNo((short) 0); // 宸ヤ綔鍙� - command.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� - command.setTaskMode(CrnTaskModeType.GO_ORIGIN); // 浠诲姟妯″紡 - command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓 - command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪 - command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰 - command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺� - command.setDestinationPosY((short) 34); // 鐩爣搴撲綅鍒� - command.setDestinationPosZ((short) 5); // 鐩爣搴撲綅灞� - return crnControl(command)?R.ok():R.error(); - } - -// @ManagerAuth(memo = "鍧愭爣绉诲姩") -// @PostMapping("/operator/coorMove") -// public R crnCoorMove(CrnOperatorParam param){ +// @ManagerAuth(memo = "鍥炲師鐐�") +// @PostMapping("/operator/bacOrigin") +// public R crnBacOrigin(CrnOperatorParam param){ // CrnCommand command = new CrnCommand(); // command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙� // command.setTaskNo((short) 0); // 宸ヤ綔鍙� // command.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� -// command.setTaskMode(CrnTaskModeType.OFFSET_MOVE); // 浠诲姟妯″紡 -// command.setSourcePosX(param.getSourceRow()); // 婧愬簱浣嶆帓 -// command.setSourcePosY(param.getSourceBay()); // 婧愬簱浣嶅垪 -// command.setSourcePosZ(param.getSourceLev()); // 婧愬簱浣嶅眰 -// command.setDestinationPosX(param.getRow()); // 鐩爣搴撲綅鎺� -// command.setDestinationPosY(param.getBay()); // 鐩爣搴撲綅鍒� -// command.setDestinationPosZ(param.getLev()); // 鐩爣搴撲綅灞� -// staNoProcess(param, command); +// command.setTaskMode(CrnTaskModeType.GO_ORIGIN); // 浠诲姟妯″紡 +// command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓 +// command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪 +// command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰 +// command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺� +// command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒� +// command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞� // return crnControl(command)?R.ok():R.error(); // } + +// @ManagerAuth(memo = "鍙嶅師鐐�") +// @PostMapping("/operator/reverseOrigin") +// public R reverseOrigin(CrnOperatorParam param){ +// CrnCommand command = new CrnCommand(); +// command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙� +// command.setTaskNo((short) 0); // 宸ヤ綔鍙� +// command.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� +// command.setTaskMode(CrnTaskModeType.GO_ORIGIN); // 浠诲姟妯″紡 +// command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓 +// command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪 +// command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰 +// command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺� +// command.setDestinationPosY((short) 34); // 鐩爣搴撲綅鍒� +// command.setDestinationPosZ((short) 5); // 鐩爣搴撲綅灞� +// return crnControl(command)?R.ok():R.error(); +// } + + @ManagerAuth(memo = "鍧愭爣绉诲姩") + @PostMapping("/operator/crnMove") + public R crnCoorMove(CrnOperatorParam param){ + CrnCommand command = new CrnCommand(); + command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙� + command.setTaskNo((short) 9999); // 宸ヤ綔鍙� + command.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� + command.setTaskMode(CrnTaskModeType.CRN_MOVE); // 浠诲姟妯″紡 + command.setSourcePosX(param.getSourceRow()); // 婧愬簱浣嶆帓 + command.setSourcePosY(param.getSourceBay()); // 婧愬簱浣嶅垪 + command.setSourcePosZ(param.getSourceLev()); // 婧愬簱浣嶅眰 + command.setDestinationPosX(param.getRow()); // 鐩爣搴撲綅鎺� + command.setDestinationPosY(param.getBay()); // 鐩爣搴撲綅鍒� + command.setDestinationPosZ(param.getLev()); // 鐩爣搴撲綅灞� + staNoProcess(param, command); + + return crnControl(command)?R.ok():R.error(); + } @ManagerAuth(memo = "浠诲姟瀹屾垚") @PostMapping("/operator/taskComplete") @@ -394,8 +423,18 @@ if (param.getCrnNo() == null) { throw new CoolException("璇烽�夋嫨鍫嗗灈鏈�"); } - MessageQueue.clear(SlaveType.Crn, param.getCrnNo()); - return R.ok("娓呴櫎鍛戒护鎴愬姛"); + CrnCommand command = new CrnCommand(); + command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙� + command.setTaskNo((short) 0); // 宸ヤ綔鍙� + command.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� + command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡 + command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓 + command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪 + command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰 + command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺� + command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒� + command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞� + return crnControl(command)?R.ok():R.error(); } @ManagerAuth(memo = "鎵嬪姩澶嶄綅") @@ -420,6 +459,7 @@ crnCommand.setCrnNo(crn.getId()); // 鍫嗗灈鏈虹紪鍙� crnCommand.setTaskMode(CrnTaskModeType.CLEAR); crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� + crnCommand.setCommand((short) 0); // 浠诲姟瀹屾垚纭浣� // 寤舵椂鍙戦�� Thread.sleep(1000L); if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, crnCommand))) { -- Gitblit v1.9.1