From 882d2ee2d9a35bf02e5fbb11a79c3abffe9cfe61 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 21 三月 2024 16:43:38 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/RgvController.java |   59 +++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 43 insertions(+), 16 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..493a8d7 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,64 @@
 
 
     @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) {
+    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("鍛戒护涓嬪彂澶辫触");

--
Gitblit v1.9.1