From 1a1be21d814f2ca0cbfa72ae562643d773fa92dd Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期三, 03 四月 2024 17:51:40 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/RgvController.java | 79 +++++++++++++++++++++++++++------------
1 files changed, 55 insertions(+), 24 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java
index 0df3a98..8a28213 100644
--- a/src/main/java/com/zy/asrs/controller/RgvController.java
+++ b/src/main/java/com/zy/asrs/controller/RgvController.java
@@ -18,6 +18,7 @@
import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.service.impl.MainServiceImpl;
import com.zy.core.CrnThread;
+import com.zy.core.RgvThread;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.OutputQueue;
import com.zy.core.cache.SlaveConnection;
@@ -66,38 +67,73 @@
@ManagerAuth(memo = "澶嶄綅")
- @PostMapping("/rgv/operator/reset")
+ @PostMapping("/operator/reset")
public R crnReset(RgvOperatorParam param){
- // 绯荤粺杩愯鐘舵�佸垽鏂�
-// if (SystemProperties.WCS_RUNNING_STATUS.get()) {
-// return R.error("wcs绯荤粺鐘舵�佷负寮�鍚�");
-// }
- short[] array = new short[9];
RgvCommand command = new RgvCommand();
command.setRgvNo(param.getRgvNo()); // 鍫嗗灈鏈虹紪鍙�
command.setReset(true);
-
- return rgvControl(command)?R.ok():R.error();
+ return rgvControl2(command)?R.ok():R.error();
+ }
+ @ManagerAuth(memo = "鑱旀満")
+ @PostMapping("/operator/auto")
+ public R crnAuto(RgvOperatorParam param){
+ RgvCommand command = new RgvCommand();
+ command.setRgvNo(param.getRgvNo()); // 鍫嗗灈鏈虹紪鍙�
+ command.setAuto(true);
+ return rgvControl2(command)?R.ok():R.error();
+ }
+ @ManagerAuth(memo = "鎭㈠浠诲姟")
+ @PostMapping("/operator/restoreTask")
+ public R crnRestoreTask(RgvOperatorParam param){
+ RgvCommand command = new RgvCommand();
+ command.setRgvNo(param.getRgvNo()); // 鍫嗗灈鏈虹紪鍙�
+ command.setRestoreTask(true);
+ return rgvControl2(command)?R.ok():R.error();
+ }
+ @ManagerAuth(memo = "瀹屾垚浠诲姟")
+ @PostMapping("/operator/compTask")
+ public R rgvCompTask(RgvOperatorParam param){
+ RgvCommand command = new RgvCommand();
+ command.setRgvNo(param.getRgvNo()); // 鍫嗗灈鏈虹紪鍙�
+ command.setCompTask(true);
+ return rgvControl2(command)?R.ok():R.error();
+ }
+ @ManagerAuth(memo = "鎬ュ仠")
+ @PostMapping("/operator/stop")
+ public R rgvStop(RgvOperatorParam param){
+ RgvCommand command = new RgvCommand();
+ command.setRgvNo(param.getRgvNo()); // 鍫嗗灈鏈虹紪鍙�
+ command.setStop(true);
+ return rgvControl2(command)?R.ok():R.error();
}
- private boolean rgvControl(CrnCommand command){
- if (command.getCrnNo() == null) {
+ @ManagerAuth(memo = "鍙栨秷鎬ュ仠")
+ @PostMapping("/operator/noStop")
+ public R rgvNoStop(RgvOperatorParam param){
+ RgvCommand command = new RgvCommand();
+ command.setRgvNo(param.getRgvNo()); // 鍫嗗灈鏈虹紪鍙�
+ command.setNoStop(true);
+ return rgvControl2(command)?R.ok():R.error();
+ }
+
+ private boolean rgvControl2(RgvCommand command){
+ if (command.getRgvNo() == null) {
throw new CoolException("璇烽�夋嫨RGV");
}
for (RgvSlave rgv : slaveProperties.getRgv()) {
// 鑾峰彇鍫嗗灈鏈轰俊鎭�
- if (command.getCrnNo().equals(rgv.getId())) {
- CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
- if (crnThread == null) {
+ if (command.getRgvNo().equals(rgv.getId())) {
+ SiemensRgvThread rgvThread = (SiemensRgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+ if (rgvThread == null) {
throw new CoolException("RGV涓嶅湪绾�");
}
- CrnProtocol crnProtocol = crnThread.getCrnProtocol();
- if (crnProtocol == null) {
+ RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+ if (rgvProtocol == null) {
throw new CoolException("RGV涓嶅湪绾�");
}
// 绌洪棽鍒ゆ柇
// if (crnProtocol.getStatusType().equals(com.zy.core.enums.CrnStatusType.IDLE) && crnProtocol.getTaskNo() == 0) {
- if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(4, command))) {
+ if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(2, command))) {
return true;
} else {
throw new CoolException("鍛戒护涓嬪彂澶辫触");
@@ -132,17 +168,12 @@
vo.setStatusType(rgvProtocol.modeType.desc); // 妯″紡鐘舵��
vo.setStatus(rgvProtocol.getStatusType().desc); // 鐘舵��
vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1浠诲姟鍙�
- vo.setStatus1(rgvProtocol.getStatusType1().desc); // 宸ヤ綅1鐘舵��
- vo.setLoading1(rgvProtocol.getLoaded1()==1?"鏈夌墿":"鏃犵墿"); // 宸ヤ綅1鏈夌墿
vo.setRgvPos(rgvProtocol.getRgvPos());
- vo.setRgvPos1(rgvProtocol.getRgvPosI());
- vo.setWalkPos(rgvProtocol.getWalkPos()==1?"鍦ㄥ畾浣�":"涓嶅湪瀹氫綅");
vo.setPakMk(rgvThread.isPakMk()?"鏃犻攣":"閿佸畾");
-// vo.setWorkNo2(rgvProtocol.getTaskNo2()); // 宸ヤ綅2浠诲姟鍙�
-// vo.setStatus2(rgvProtocol.getStatusType2().desc); // 宸ヤ綅2鐘舵��
-// vo.setLoading2(rgvProtocol.getLoaded2()==1?"鏈夌墿":"鏃犵墿"); // 宸ヤ綅2鏈夌墿
-
+ vo.setWalkPos(rgvProtocol.getAlarm() == 0?"姝e父":"鎶ヨ");
vo.setWarnCode(String.valueOf(rgvProtocol.getAlarm()));
+ vo.setStaNo(rgvProtocol.getSouSta().intValue());
+ vo.setSourceStaNo(rgvProtocol.getEndSta().intValue());
if (rgvProtocol.getAlarm() > 0) {
BasRgvErr rgvErr = basRgvErrMapper.selectById(rgvProtocol.getAlarm());
vo.setAlarm(rgvErr==null?"鏈煡寮傚父":rgvErr.getErrName());
--
Gitblit v1.9.1