From a775cccf69b395cff784ea50164b89a6ef00341a Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 24 十一月 2025 12:56:27 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/controller/RgvController.java | 574 ++++++++++++++++++++++++++++----------------------------
1 files changed, 287 insertions(+), 287 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java
index 98f3848..80b35a5 100644
--- a/src/main/java/com/zy/asrs/controller/RgvController.java
+++ b/src/main/java/com/zy/asrs/controller/RgvController.java
@@ -66,113 +66,113 @@
private LocMastService locMastService;
@Autowired
private BasRgvMapMapper basRgvMapMapper;
- @ManagerAuth(memo = "瑙i攣灏忚溅")
- @PostMapping("/lock")
- public R lock(CrnOperatorParam param){
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, param.getRgvNo());
- rgvThread.setPakMk(true);
- return R.ok();
- }
-
- @PostMapping("/table/rgv/state")
- @ManagerAuth(memo = "RGV淇℃伅琛�")
- public R rgvStateTable() {
- List<RgvStateTableVo> list = new ArrayList<>();
- List<BasRgv> rgvs = basRgvService.selectList(new EntityWrapper<BasRgv>().orderBy("rgv_no"));
-
- for (BasRgv basRgv : rgvs) {
- RgvStateTableVo vo = new RgvStateTableVo();
- vo.setRgvNo(basRgv.getRgvNo()); // RGV鍙�
- list.add(vo);
-
- // 鑾峰彇RGV淇℃伅
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basRgv.getRgvNo());
- if (rgvThread == null) continue;
-
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) continue;
- BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
-
- vo.setStatusType(rgvProtocol.modeType.desc); // 妯″紡鐘舵��
- vo.setStatus(String.valueOf(rgvProtocol.getMode())); // 鐘舵��
- vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1浠诲姟鍙�
- vo.setStatus1(rgvProtocol.getStatusType1().desc); // 宸ヤ綅1鐘舵��
- vo.setLoading1(rgvProtocol.getLoaded1() ? "鏈夌墿" : "鏃犵墿"); // 宸ヤ綅1鏈夌墿
- vo.setRgvPos(basRgvMap != null?basRgvMap.getNowRoute():0);
- vo.setRgvPos1(rgvProtocol.getRgvPosI2());
- vo.setWalkPos(Objects.equals(rgvProtocol.getWalkPos(), 1) ? "鍦ㄥ畾浣�" : "涓嶅湪瀹氫綅");
- vo.setPakMk(rgvThread.isPakMk() ? "鏃犻攣" : "閿佸畾");
-// vo.setPakIn(rgvThread.isPakIn() ? "鍙叆" : "涓嶅彲鍏�");
-// vo.setPakOut(rgvThread.isPakOut() ? "鍙嚭" : "涓嶅彲鍑�");
-// vo.setPakRgv(rgvThread.isPakRgv() ? "鏃犻攣" : "閿佸畾");
- vo.setPaking(rgvThread.isPaking()? "鏃犻攣" : "閿佸畾");
-// vo.setPakAll(rgvThread.isPakAll() ? "鏃犻攣" : "閿佸畾");
-// vo.setPakToCrn(rgvThread.isPakToCrn() ? "鏃犻攣" : "閿佸畾");
+// @ManagerAuth(memo = "瑙i攣灏忚溅")
+// @PostMapping("/lock")
+// public R lock(CrnOperatorParam param){
+// RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, param.getRgvNo());
+// rgvThread.setPakMk(true);
+// return R.ok();
+// }
+//
+// @PostMapping("/table/rgv/state")
+// @ManagerAuth(memo = "RGV淇℃伅琛�")
+// public R rgvStateTable() {
+// List<RgvStateTableVo> list = new ArrayList<>();
+// List<BasRgv> rgvs = basRgvService.selectList(new EntityWrapper<BasRgv>().orderBy("rgv_no"));
+//
+// for (BasRgv basRgv : rgvs) {
+// RgvStateTableVo vo = new RgvStateTableVo();
+// vo.setRgvNo(basRgv.getRgvNo()); // RGV鍙�
+// list.add(vo);
+//
+// // 鑾峰彇RGV淇℃伅
+// RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basRgv.getRgvNo());
+// if (rgvThread == null) continue;
+//
+// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+// if (rgvProtocol == null) continue;
+// BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
+//
+// vo.setStatusType(rgvProtocol.modeType.desc); // 妯″紡鐘舵��
+// vo.setStatus(String.valueOf(rgvProtocol.getMode())); // 鐘舵��
+// vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1浠诲姟鍙�
+// vo.setStatus1(rgvProtocol.getStatusType1().desc); // 宸ヤ綅1鐘舵��
+// vo.setLoading1(rgvProtocol.getLoaded1() ? "鏈夌墿" : "鏃犵墿"); // 宸ヤ綅1鏈夌墿
+// vo.setRgvPos(basRgvMap != null?basRgvMap.getNowRoute():0);
+// vo.setRgvPos1(rgvProtocol.getRgvPosI2());
+// vo.setWalkPos(Objects.equals(rgvProtocol.getWalkPos(), 1) ? "鍦ㄥ畾浣�" : "涓嶅湪瀹氫綅");
+// vo.setPakMk(rgvThread.isPakMk() ? "鏃犻攣" : "閿佸畾");
+//// vo.setPakIn(rgvThread.isPakIn() ? "鍙叆" : "涓嶅彲鍏�");
+//// vo.setPakOut(rgvThread.isPakOut() ? "鍙嚭" : "涓嶅彲鍑�");
+//// vo.setPakRgv(rgvThread.isPakRgv() ? "鏃犻攣" : "閿佸畾");
+// vo.setPaking(rgvThread.isPaking()? "鏃犻攣" : "閿佸畾");
+//// vo.setPakAll(rgvThread.isPakAll() ? "鏃犻攣" : "閿佸畾");
+//// vo.setPakToCrn(rgvThread.isPakToCrn() ? "鏃犻攣" : "閿佸畾");
+//
+//
+// vo.setWorkNo2(rgvProtocol.getTaskNo2()); // 宸ヤ綅2浠诲姟鍙�
+//// vo.setStatus2(rgvProtocol.getStatusType2().desc); // 宸ヤ綅2鐘舵��
+// vo.setLoading2(rgvProtocol.getLoaded2() ? "鏈夌墿" : "鏃犵墿"); // 宸ヤ綅2鏈夌墿
+//
+// // --- 閬嶅巻 errX 瀛楁鐢熸垚 warnCode 鍜� alarm ---
+// List<String> alarms = new ArrayList<>();
+// List<String> warnCodes = new ArrayList<>();
+// Field[] fields = rgvProtocol.getClass().getDeclaredFields();
+// for (Field field : fields) {
+// if (field.getName().startsWith("err") && field.getType().equals(Boolean.class)) {
+// field.setAccessible(true);
+// try {
+// Boolean value = (Boolean) field.get(rgvProtocol);
+// if (Boolean.TRUE.equals(value)) {
+// String numPart = field.getName().substring(3);
+// int errId = Integer.parseInt(numPart);
+// warnCodes.add(String.valueOf(errId));
+//
+// BasRgvErr rgvErr = basRgvErrMapper.selectById(errId);
+// alarms.add(rgvErr == null ? "鏈煡寮傚父(" + errId + ")" : rgvErr.getErrName());
+// }
+// } catch (IllegalAccessException e) {
+// e.printStackTrace();
+// }
+// }
+// }
+//
+// vo.setWarnCode(String.join(",", warnCodes));
+// vo.setAlarm(alarms.isEmpty() ? "" : String.join("锛�", alarms));
+// }
+//
+// return R.ok().add(list);
+// }
- vo.setWorkNo2(rgvProtocol.getTaskNo2()); // 宸ヤ綅2浠诲姟鍙�
-// vo.setStatus2(rgvProtocol.getStatusType2().desc); // 宸ヤ綅2鐘舵��
- vo.setLoading2(rgvProtocol.getLoaded2() ? "鏈夌墿" : "鏃犵墿"); // 宸ヤ綅2鏈夌墿
-
- // --- 閬嶅巻 errX 瀛楁鐢熸垚 warnCode 鍜� alarm ---
- List<String> alarms = new ArrayList<>();
- List<String> warnCodes = new ArrayList<>();
- Field[] fields = rgvProtocol.getClass().getDeclaredFields();
- for (Field field : fields) {
- if (field.getName().startsWith("err") && field.getType().equals(Boolean.class)) {
- field.setAccessible(true);
- try {
- Boolean value = (Boolean) field.get(rgvProtocol);
- if (Boolean.TRUE.equals(value)) {
- String numPart = field.getName().substring(3);
- int errId = Integer.parseInt(numPart);
- warnCodes.add(String.valueOf(errId));
-
- BasRgvErr rgvErr = basRgvErrMapper.selectById(errId);
- alarms.add(rgvErr == null ? "鏈煡寮傚父(" + errId + ")" : rgvErr.getErrName());
- }
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- }
- }
- }
-
- vo.setWarnCode(String.join(",", warnCodes));
- vo.setAlarm(alarms.isEmpty() ? "" : String.join("锛�", alarms));
- }
-
- return R.ok().add(list);
- }
-
-
- @PostMapping("/table/rgv/msg")
- @ManagerAuth(memo = "RGV鏁版嵁琛�")
- public R rgvMsgTable(){
- List<RgvMsgTableVo> list = new ArrayList<>();
- List<BasRgv> rgvs = basRgvService.selectList(new EntityWrapper<BasRgv>().orderBy("rgv_no"));
- for (BasRgv basRgv : rgvs) {
- // 琛ㄦ牸琛�
- RgvMsgTableVo vo = new RgvMsgTableVo();
- vo.setRgvNo(basRgv.getRgvNo()); // RGV鍙�
- list.add(vo);
- // 鑾峰彇RGV淇℃伅
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basRgv.getRgvNo());
- if (rgvThread == null) {
- continue;
- }
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) {
- continue;
- }
-
- vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1宸ヤ綔鍙�
- vo.setWorkNo2(rgvProtocol.getTaskNo2()); //宸ヤ綅2 宸ヤ綔鍙�
- vo.setStaNo(String.valueOf(rgvProtocol.getRgvPosDestination())); //灏忚溅鐩爣绔�
- vo.setStatus(rgvProtocol.modeType.equals(RgvModeType.AUTO)? rgvProtocol.modeType.desc: RgvModeType.HAND.desc); // 妯″紡鐘舵��
-
- }
- return R.ok().add(list);
- }
+// @PostMapping("/table/rgv/msg")
+// @ManagerAuth(memo = "RGV鏁版嵁琛�")
+// public R rgvMsgTable(){
+// List<RgvMsgTableVo> list = new ArrayList<>();
+// List<BasRgv> rgvs = basRgvService.selectList(new EntityWrapper<BasRgv>().orderBy("rgv_no"));
+// for (BasRgv basRgv : rgvs) {
+// // 琛ㄦ牸琛�
+// RgvMsgTableVo vo = new RgvMsgTableVo();
+// vo.setRgvNo(basRgv.getRgvNo()); // RGV鍙�
+// list.add(vo);
+// // 鑾峰彇RGV淇℃伅
+// RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basRgv.getRgvNo());
+// if (rgvThread == null) {
+// continue;
+// }
+// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+// if (rgvProtocol == null) {
+// continue;
+// }
+//
+// vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1宸ヤ綔鍙�
+// vo.setWorkNo2(rgvProtocol.getTaskNo2()); //宸ヤ綅2 宸ヤ綔鍙�
+// vo.setStaNo(String.valueOf(rgvProtocol.getRgvPosDestination())); //灏忚溅鐩爣绔�
+// vo.setStatus(rgvProtocol.modeType.equals(RgvModeType.AUTO)? rgvProtocol.modeType.desc: RgvModeType.HAND.desc); // 妯″紡鐘舵��
+//
+// }
+// return R.ok().add(list);
+// }
@PostMapping("/output/site")
@ManagerAuth(memo = "RGV鎶ユ枃鏃ュ織杈撳嚭")
@@ -187,196 +187,196 @@
return R.ok().add(str.toString());
}
- /****************************************************************/
- /************************** 鎵嬪姩鎿嶄綔 ******************************/
- /****************************************************************/
-
- @ManagerAuth(memo = "鍙栨斁璐�")
- @PostMapping("/operator/put")
- public R rgvFetchPut(RgvOperatorParam param){
- RgvCommand command = new RgvCommand();
- command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
- command.setAckFinish1(false); // 浠诲姟瀹屾垚纭浣�
- command.setTaskNo(0); // 宸ヤ綔鍙�
- command.setTaskMode1(RgvTaskModeType.FETCH_PUT); // 浠诲姟妯″紡: 鍙栨斁璐�
- command.setSourceStaNo1(param.getSourceStaNo1()); // 婧愮珯
-// command.setDestinationStaNo1(param.getStaNo1()); // 鐩爣绔�
- command.setAckFinish2(false); // 浠诲姟瀹屾垚纭浣�
- command.setTaskNo2(0); // 宸ヤ綔鍙�
- command.setTaskMode2(RgvTaskModeType.FETCH_PUT); // 浠诲姟妯″紡: 鍙栨斁璐�
- command.setSourceStaNo2(param.getSourceStaNo2()); // 婧愮珯
-// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
- command.setCommand(true);
-
- return rgvControl(command)? R.ok(): R.error();
- }
-
- @ManagerAuth(memo = "鍙栬揣")
- @PostMapping("/operator/take")
- public R rgvFetch(RgvOperatorParam param){
- RgvCommand command = new RgvCommand();
- command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
- command.setWrkTaskPri(param.getWorkSta()); //鎵ц宸ヤ綅
- command.setTaskNo(Math.toIntExact(param.getWorkNo())); // 宸ヤ綔鍙�
- command.setTaskStatus(RgvTaskStatusType.FETCH); // 浠诲姟妯″紡: 鍙栬揣
- command.setTargetPosition(Integer.valueOf(param.getStaNo())); // 鐩爣绔�
-// command.setTaskMode2(RgvTaskModeType.FETCH); // 浠诲姟妯″紡: 鍙栨斁璐�
+// /****************************************************************/
+// /************************** 鎵嬪姩鎿嶄綔 ******************************/
+// /****************************************************************/
+//
+// @ManagerAuth(memo = "鍙栨斁璐�")
+// @PostMapping("/operator/put")
+// public R rgvFetchPut(RgvOperatorParam param){
+// RgvCommand command = new RgvCommand();
+// command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
// command.setAckFinish1(false); // 浠诲姟瀹屾垚纭浣�
+// command.setTaskNo(0); // 宸ヤ綔鍙�
+// command.setTaskMode1(RgvTaskModeType.FETCH_PUT); // 浠诲姟妯″紡: 鍙栨斁璐�
// command.setSourceStaNo1(param.getSourceStaNo1()); // 婧愮珯
+//// command.setDestinationStaNo1(param.getStaNo1()); // 鐩爣绔�
// command.setAckFinish2(false); // 浠诲姟瀹屾垚纭浣�
-// command.setTaskNo2( 0); // 宸ヤ綔鍙�
+// command.setTaskNo2(0); // 宸ヤ綔鍙�
+// command.setTaskMode2(RgvTaskModeType.FETCH_PUT); // 浠诲姟妯″紡: 鍙栨斁璐�
// command.setSourceStaNo2(param.getSourceStaNo2()); // 婧愮珯
-// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
- command.setCommand(true);
+//// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
+// command.setCommand(true);
+//
+// return rgvControl(command)? R.ok(): R.error();
+// }
- return rgvControl(command)? R.ok(): R.error();
- }
+// @ManagerAuth(memo = "鍙栬揣")
+// @PostMapping("/operator/take")
+// public R rgvFetch(RgvOperatorParam param){
+// RgvCommand command = new RgvCommand();
+// command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
+// command.setWrkTaskPri(param.getWorkSta()); //鎵ц宸ヤ綅
+// command.setTaskNo(Math.toIntExact(param.getWorkNo())); // 宸ヤ綔鍙�
+// command.setTaskStatus(RgvTaskStatusType.FETCH); // 浠诲姟妯″紡: 鍙栬揣
+// command.setTargetPosition(Integer.valueOf(param.getStaNo())); // 鐩爣绔�
+//// command.setTaskMode2(RgvTaskModeType.FETCH); // 浠诲姟妯″紡: 鍙栨斁璐�
+//// command.setAckFinish1(false); // 浠诲姟瀹屾垚纭浣�
+//// command.setSourceStaNo1(param.getSourceStaNo1()); // 婧愮珯
+//// command.setAckFinish2(false); // 浠诲姟瀹屾垚纭浣�
+//// command.setTaskNo2( 0); // 宸ヤ綔鍙�
+//// command.setSourceStaNo2(param.getSourceStaNo2()); // 婧愮珯
+//// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
+// command.setCommand(true);
+//
+// return rgvControl(command)? R.ok(): R.error();
+// }
- @ManagerAuth(memo = "鏀捐揣")
- @PostMapping("/operator/stockMove")
- public R rgvPut(RgvOperatorParam param){
- RgvCommand command = new RgvCommand();
- command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
- command.setWrkTaskPri(param.getWorkSta()); //鎵ц宸ヤ綅
- command.setTaskNo(Math.toIntExact(param.getWorkNo())); // 宸ヤ綔鍙�
- command.setTaskStatus(RgvTaskStatusType.PUT); // 浠诲姟妯″紡: 鍙栬揣
- command.setTargetPosition(Integer.valueOf(param.getStaNo())); // 鐩爣绔�
-// command.setAckFinish1(false); // 浠诲姟瀹屾垚纭浣�
-// command.setSourceStaNo1(param.getSourceStaNo1()); // 婧愮珯
-// command.setAckFinish2(false); // 浠诲姟瀹屾垚纭浣�
+// @ManagerAuth(memo = "鏀捐揣")
+// @PostMapping("/operator/stockMove")
+// public R rgvPut(RgvOperatorParam param){
+// RgvCommand command = new RgvCommand();
+// command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
+// command.setWrkTaskPri(param.getWorkSta()); //鎵ц宸ヤ綅
+// command.setTaskNo(Math.toIntExact(param.getWorkNo())); // 宸ヤ綔鍙�
+// command.setTaskStatus(RgvTaskStatusType.PUT); // 浠诲姟妯″紡: 鍙栬揣
+// command.setTargetPosition(Integer.valueOf(param.getStaNo())); // 鐩爣绔�
+//// command.setAckFinish1(false); // 浠诲姟瀹屾垚纭浣�
+//// command.setSourceStaNo1(param.getSourceStaNo1()); // 婧愮珯
+//// command.setAckFinish2(false); // 浠诲姟瀹屾垚纭浣�
+//// command.setTaskNo2( 0); // 宸ヤ綔鍙�
+//// command.setTaskMode2(RgvTaskModeType.FETCH); // 浠诲姟妯″紡: 鍙栨斁璐�
+//// command.setSourceStaNo2(param.getSourceStaNo2()); // 婧愮珯
+//// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
+// command.setCommand(true);
+//
+// return rgvControl(command)? R.ok(): R.error();
+// }
+
+
+
+// @ManagerAuth(memo = "浠诲姟瀹屾垚")
+// @PostMapping("/operator/taskComplete")
+// public R rgvTaskComplete(RgvOperatorParam param){
+// RgvCommand command = new RgvCommand();
+// command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
+// command.setAckFinish1(true); // 浠诲姟瀹屾垚纭浣�
+//// command.setTaskNo1(0); // 宸ヤ綔鍙�
+// command.setTaskMode1(RgvTaskModeType.NONE); // 浠诲姟妯″紡
+// command.setSourceStaNo1((short) 0); // 婧愮珯
+// command.setDestinationStaNo1((short) 0); // 鐩爣绔�
+// command.setAckFinish2(true); // 浠诲姟瀹屾垚纭浣�
// command.setTaskNo2( 0); // 宸ヤ綔鍙�
-// command.setTaskMode2(RgvTaskModeType.FETCH); // 浠诲姟妯″紡: 鍙栨斁璐�
-// command.setSourceStaNo2(param.getSourceStaNo2()); // 婧愮珯
-// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
- command.setCommand(true);
+// command.setTaskMode2(RgvTaskModeType.NONE); // 浠诲姟妯″紡
+// command.setSourceStaNo2((short) 0); // 婧愮珯
+// command.setDestinationStaNo2((short) 0); // 鐩爣绔�
+// command.setCommand(true);
+//
+// return rgvControl(command)? R.ok(): R.error();
+// }
- return rgvControl(command)? R.ok(): R.error();
- }
+// @ManagerAuth(memo = "娓呴櫎鍛戒护")
+// @PostMapping("/operator/clearCommand")
+// public R rgvClearCommand(RgvOperatorParam param){
+// if (param.getRgvNo() == null) {
+// throw new CoolException("璇烽�夋嫨RGV鍙�");
+// }
+// RgvCommand command = new RgvCommand();
+// command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
+// command.setWrkTaskPri(0); //鎵ц宸ヤ綅
+// command.setTaskNo(Math.toIntExact(0)); // 宸ヤ綔鍙�
+// command.setTaskStatus((short)0); // 浠诲姟妯″紡: 鍙栬揣
+// command.setTargetPosition(0); // 鐩爣绔�
+//
+// return rgvClear(command)? R.ok(): R.error();
+// }
-
-
- @ManagerAuth(memo = "浠诲姟瀹屾垚")
- @PostMapping("/operator/taskComplete")
- public R rgvTaskComplete(RgvOperatorParam param){
- RgvCommand command = new RgvCommand();
- command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
- command.setAckFinish1(true); // 浠诲姟瀹屾垚纭浣�
-// command.setTaskNo1(0); // 宸ヤ綔鍙�
- command.setTaskMode1(RgvTaskModeType.NONE); // 浠诲姟妯″紡
- command.setSourceStaNo1((short) 0); // 婧愮珯
- command.setDestinationStaNo1((short) 0); // 鐩爣绔�
- command.setAckFinish2(true); // 浠诲姟瀹屾垚纭浣�
- command.setTaskNo2( 0); // 宸ヤ綔鍙�
- command.setTaskMode2(RgvTaskModeType.NONE); // 浠诲姟妯″紡
- command.setSourceStaNo2((short) 0); // 婧愮珯
- command.setDestinationStaNo2((short) 0); // 鐩爣绔�
- command.setCommand(true);
-
- return rgvControl(command)? R.ok(): R.error();
- }
-
- @ManagerAuth(memo = "娓呴櫎鍛戒护")
- @PostMapping("/operator/clearCommand")
- public R rgvClearCommand(RgvOperatorParam param){
- if (param.getRgvNo() == null) {
- throw new CoolException("璇烽�夋嫨RGV鍙�");
- }
- RgvCommand command = new RgvCommand();
- command.setRgvNo(param.getRgvNo()); // RGV缂栧彿
- command.setWrkTaskPri(0); //鎵ц宸ヤ綅
- command.setTaskNo(Math.toIntExact(0)); // 宸ヤ綔鍙�
- command.setTaskStatus((short)0); // 浠诲姟妯″紡: 鍙栬揣
- command.setTargetPosition(0); // 鐩爣绔�
-
- return rgvClear(command)? R.ok(): R.error();
- }
-
- @ManagerAuth(memo = "鎵嬪姩澶嶄綅")
- @PostMapping("/operator/handleReset")
- public R handleReset(RgvOperatorParam param) throws Exception {
- if (param.getRgvNo() == null) {
- throw new CoolException("璇烽�夋嫨RGV");
- }
- // 鑾峰彇RGV缂撳瓨
- for (RgvSlave rgv : slaveProperties.getRgv()) {
- // 鑾峰彇RGV淇℃伅
- if (param.getRgvNo().equals(rgv.getId())) {
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
- if (rgvThread == null) {
- throw new CoolException("RGV涓嶅湪绾�");
- }
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) {
- throw new CoolException("RGV涓嶅湪绾�");
- }
- RgvCommand Command = new RgvCommand();
- Command.setRgvNo(rgv.getId()); // RGV缂栧彿
- Command.setTaskMode1(RgvTaskModeType.NONE);
- Command.setAckFinish1(true); // 浠诲姟瀹屾垚纭浣�
- Command.setAckFinish2(true); // 浠诲姟瀹屾垚纭浣�
- Command.setCommand(true); // 浠诲姟瀹屾垚纭浣�
- // 寤舵椂鍙戦��
- Thread.sleep(1000L);
- if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(4, Command))) {
- return R.ok();
- } else {
- throw new CoolException("鍛戒护涓嬪彂澶辫触");
- }
-
- }
- }
- return R.error();
- }
-
- private boolean rgvControl(RgvCommand command){
- if (command.getRgvNo() == null) {
- throw new CoolException("璇烽�夋嫨RGV");
- }
- for (RgvSlave rgv : slaveProperties.getRgv()) {
- // 鑾峰彇RGV淇℃伅
- if (command.getRgvNo().equals(rgv.getId())) {
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
- if (rgvThread == null) {
- throw new CoolException("RGV涓嶅湪绾�");
- }
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) {
- throw new CoolException("RGV涓嶅湪绾�");
- }
- if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(2, command))) {
- return true;
- } else {
- throw new CoolException("鍛戒护涓嬪彂澶辫触");
- }
- }
- }
- return false;
- }
-
- private boolean rgvClear(RgvCommand command){
- if (command.getRgvNo() == null) {
- throw new CoolException("璇烽�夋嫨RGV");
- }
- for (RgvSlave rgv : slaveProperties.getRgv()) {
- // 鑾峰彇RGV淇℃伅
- if (command.getRgvNo().equals(rgv.getId())) {
- RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
- if (rgvThread == null) {
- throw new CoolException("RGV涓嶅湪绾�");
- }
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) {
- throw new CoolException("RGV涓嶅湪绾�");
- }
- if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(3, command))) {
- return true;
- } else {
- throw new CoolException("鍛戒护涓嬪彂澶辫触");
- }
- }
- }
- return false;
-
- }
+// @ManagerAuth(memo = "鎵嬪姩澶嶄綅")
+// @PostMapping("/operator/handleReset")
+// public R handleReset(RgvOperatorParam param) throws Exception {
+// if (param.getRgvNo() == null) {
+// throw new CoolException("璇烽�夋嫨RGV");
+// }
+// // 鑾峰彇RGV缂撳瓨
+// for (RgvSlave rgv : slaveProperties.getRgv()) {
+// // 鑾峰彇RGV淇℃伅
+// if (param.getRgvNo().equals(rgv.getId())) {
+// RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+// if (rgvThread == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+// if (rgvProtocol == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// RgvCommand Command = new RgvCommand();
+// Command.setRgvNo(rgv.getId()); // RGV缂栧彿
+// Command.setTaskMode1(RgvTaskModeType.NONE);
+// Command.setAckFinish1(true); // 浠诲姟瀹屾垚纭浣�
+// Command.setAckFinish2(true); // 浠诲姟瀹屾垚纭浣�
+// Command.setCommand(true); // 浠诲姟瀹屾垚纭浣�
+// // 寤舵椂鍙戦��
+// Thread.sleep(1000L);
+// if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(4, Command))) {
+// return R.ok();
+// } else {
+// throw new CoolException("鍛戒护涓嬪彂澶辫触");
+// }
+//
+// }
+// }
+// return R.error();
+// }
+//
+// private boolean rgvControl(RgvCommand command){
+// if (command.getRgvNo() == null) {
+// throw new CoolException("璇烽�夋嫨RGV");
+// }
+// for (RgvSlave rgv : slaveProperties.getRgv()) {
+// // 鑾峰彇RGV淇℃伅
+// if (command.getRgvNo().equals(rgv.getId())) {
+// RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+// if (rgvThread == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+// if (rgvProtocol == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(2, command))) {
+// return true;
+// } else {
+// throw new CoolException("鍛戒护涓嬪彂澶辫触");
+// }
+// }
+// }
+// return false;
+// }
+//
+// private boolean rgvClear(RgvCommand command){
+// if (command.getRgvNo() == null) {
+// throw new CoolException("璇烽�夋嫨RGV");
+// }
+// for (RgvSlave rgv : slaveProperties.getRgv()) {
+// // 鑾峰彇RGV淇℃伅
+// if (command.getRgvNo().equals(rgv.getId())) {
+// RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+// if (rgvThread == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+// if (rgvProtocol == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(3, command))) {
+// return true;
+// } else {
+// throw new CoolException("鍛戒护涓嬪彂澶辫触");
+// }
+// }
+// }
+// return false;
+//
+// }
}
\ No newline at end of file
--
Gitblit v1.9.1