From c904f735e0b8a488ef56744c08f8e10258639bce Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期四, 05 六月 2025 15:54:58 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/RgvController.java | 71 +++++++++++++++++++++++++++++++++-- 1 files changed, 67 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java index 0af8021..59cb2d8 100644 --- a/src/main/java/com/zy/asrs/controller/RgvController.java +++ b/src/main/java/com/zy/asrs/controller/RgvController.java @@ -14,10 +14,12 @@ import com.zy.asrs.entity.BasRgv; import com.zy.asrs.entity.BasRgvErr; import com.zy.asrs.entity.WrkMast; +import com.zy.asrs.entity.WrkMastSta; import com.zy.asrs.mapper.BasRgvErrMapper; import com.zy.asrs.service.BasRgvService; import com.zy.asrs.service.LocMastService; import com.zy.asrs.service.WrkMastService; +import com.zy.asrs.service.WrkMastStaService; import com.zy.asrs.service.impl.MainServiceImpl; import com.zy.core.CrnThread; import com.zy.core.RgvThread; @@ -70,6 +72,8 @@ private MainServiceImpl mainService; @Autowired private LocMastService locMastService; + @Autowired + private WrkMastStaService wrkMastStaService; int wrkNo = 9990; @@ -215,6 +219,12 @@ case 16://璐у弶瀹氫綅鍥炰腑 DB="5.7"; break; + case 17://鎭㈠鑱旀満浠诲姟 + DB="6.0"; + break; + case 18://娓呮鑱旀満浠诲姟 + DB="6.1"; + break; default: return R.error("鎸夐挳涓嶅瓨鍦紵锛燂紵锛燂紒锛侊紒"); } @@ -291,6 +301,12 @@ return rgvFetchSingleStepPut(param,3)?R.ok():R.error(); } + @ManagerAuth(memo = "鍙栨斁") + @PostMapping("/operator/single/step/four/put") + public R rgvFetchSingleStepFourPut(RgvOperatorParam param){ + return rgvFetchSingleStepPut(param,4)?R.ok():R.error(); + } + public boolean rgvFetchSingleStepPut(RgvOperatorParam param ,Integer type){ wrkNo++; RgvCommand command = new RgvCommand(); @@ -306,6 +322,9 @@ break; case 3: fetchPut = RgvTaskModeType.X_MOVE; + break; + case 4: + fetchPut = RgvTaskModeType.FETCH_PUT; break; default: return false; @@ -323,7 +342,7 @@ // command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔� command.setCommand((short) 0); - return rgvControl(command); + return rgvControlD(command); } @@ -426,15 +445,29 @@ if (rgvProtocol == null) { continue; } + if (rgvProtocol.getTaskNo1() != 0){ + WrkMastSta wrkMastSta = wrkMastStaService.selectOne(new EntityWrapper<WrkMastSta>() + .setSqlSelect("TOP 1 wrk_no as wrkNo , wrk_sts as wrkSts, create_time as createTime") + .eq("wrk_No", rgvProtocol.getTaskNo1()) + + .orderBy("create_time", false) + + ); + if (!Cools.isEmpty(wrkMastSta)){ + vo.setWrkSts(wrkMastSta.getWrkSts()); + } + } vo.setStatusType(rgvProtocol.modeType.desc); // 妯″紡鐘舵�� vo.setStatus(rgvProtocol.getStatusType1().desc); // 鐘舵�� vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1浠诲姟鍙� - vo.setRgvPos(rgvProtocol.getRgvPos()); + vo.setRgvPos(rgvProtocol.getCode()); vo.setPakMk(rgvThread.isPakMk()?"鏃犻攣":"閿佸畾"); vo.setWalkPos(rgvProtocol.getAlarm() == 0?"姝e父":"鎶ヨ"); vo.setWarnCode(String.valueOf(rgvProtocol.getAlarm())); -// vo.setStaNo(rgvProtocol.getSouSta().intValue()); -// vo.setSourceStaNo(rgvProtocol.getEndSta().intValue()); + vo.setList32(rgvProtocol.getList32()); + vo.setList33(rgvProtocol.getList33()); + vo.setList34(rgvProtocol.getList34()); + vo.setList35(rgvProtocol.getList35()); if (rgvProtocol.getAlarm() > 0) { BasRgvErr rgvErr = basRgvErrMapper.selectById(rgvProtocol.getAlarm()); vo.setAlarm(rgvErr==null?"鏈煡寮傚父":rgvErr.getErrName()); @@ -608,4 +641,34 @@ return false; } + private boolean rgvControlD(RgvCommand command){ + if (command.getRgvNo() == null) { + throw new CoolException("璇烽�夋嫨RGV"); + } + for (RgvSlave rgv : slaveProperties.getRgv()) { + // 鑾峰彇RGV淇℃伅 + if (command.getRgvNo().equals(rgv.getId())) { +// SiemensRgvThread rgvThread = (SiemensRgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId()); +// if (rgvThread == null) { +// throw new CoolException("RGV涓嶅湪绾�"); +// } +// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); +// if (rgvProtocol == null) { +// throw new CoolException("RGV涓嶅湪绾�"); +// } + try{ + if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(11, command))) { + return true; + } else { + throw new CoolException("鍛戒护涓嬪彂澶辫触"); + } + }catch (Exception e){ + log.error("鍗曟浠诲姟涓嬪彂澶辫触锛屽紓甯革細"+e); + throw new CoolException("鍛戒护涓嬪彂澶辫触"); + } + } + } + return false; + } + } \ No newline at end of file -- Gitblit v1.9.1