From 7ea7fa055306a766420d578f508a7dc358afebc1 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期四, 25 八月 2022 14:09:16 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/SteController.java      |   53 +++++++++++++++++
 src/main/webapp/views/ste.html                               |   45 +++++++++------
 src/main/java/com/zy/asrs/domain/param/SteOperatorParam.java |   32 ++++++++++
 3 files changed, 112 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/SteController.java b/src/main/java/com/zy/asrs/controller/SteController.java
index 803842b..6cfc5dd 100644
--- a/src/main/java/com/zy/asrs/controller/SteController.java
+++ b/src/main/java/com/zy/asrs/controller/SteController.java
@@ -2,18 +2,26 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.annotations.ManagerAuth;
+import com.core.common.BaseRes;
 import com.core.common.Cools;
 import com.core.common.R;
+import com.core.exception.CoolException;
 import com.zy.asrs.domain.enums.CrnStatusType;
+import com.zy.asrs.domain.param.SteOperatorParam;
 import com.zy.asrs.domain.vo.SteMsgTableVo;
 import com.zy.asrs.domain.vo.SteStateTableVo;
 import com.zy.asrs.entity.BasSte;
 import com.zy.asrs.entity.WrkMast;
 import com.zy.asrs.service.BasSteService;
 import com.zy.asrs.service.WrkMastService;
+import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.OutputQueue;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
+import com.zy.core.enums.SteTaskModeType;
+import com.zy.core.model.SteSlave;
+import com.zy.core.model.Task;
+import com.zy.core.model.command.SteCommand;
 import com.zy.core.model.protocol.SteProtocol;
 import com.zy.core.properties.SlaveProperties;
 import com.zy.core.thread.SteThread;
@@ -143,4 +151,49 @@
         return R.ok().add(str.toString());
     }
 
+
+    /****************************************************************/
+    /************************** 鎵嬪姩鎿嶄綔 ******************************/
+    /****************************************************************/
+
+    @ManagerAuth(memo = "鎵嬪姩鎿嶄綔")
+    @PostMapping("/operator/ste")
+    public R steOperator(SteOperatorParam param){
+        if (Cools.isEmpty(param.getSteNo(), param.getSteTaskMode())) {
+            return R.parse(BaseRes.PARAM);
+        }
+
+        for (SteSlave ste : slaveProperties.getSte()) {
+            // 鑾峰彇鍫嗗灈鏈轰俊鎭�
+            if (param.getSteNo().equals(ste.getId())) {
+                SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, ste.getId());
+                if (steThread == null) {
+                    throw new CoolException("绌挎杞︿笉鍦ㄧ嚎");
+                }
+                SteProtocol steProtocol = steThread.getSteProtocol();
+                if (steProtocol == null) {
+                    throw new CoolException("绌挎杞︿笉鍦ㄧ嚎");
+                }
+                SteTaskModeType steTaskModeType = SteTaskModeType.get(param.getSteTaskMode());
+                SteCommand steCommand = new SteCommand();
+                steCommand.setSteNo(ste.getId()); // 绌挎杞︾紪鍙�
+                if (param.getSteTaskMode() == 16) {
+                    steCommand.setComplete(true);
+                } else {
+                    if (steTaskModeType == null) {
+                        throw new CoolException("浠诲姟绫诲瀷閿欒");
+                    }
+                    steCommand.setTaskNo(param.getTaskNo()); // 宸ヤ綔鍙�
+                    steCommand.setTaskMode(steTaskModeType);
+                }
+                if (MessageQueue.offer(SlaveType.Ste, ste.getId(), new Task(2, steCommand))) {
+                    return R.ok();
+                } else {
+                    throw new CoolException("鍛戒护涓嬪彂澶辫触");
+                }
+            }
+        }
+        return R.error();
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/domain/param/SteOperatorParam.java b/src/main/java/com/zy/asrs/domain/param/SteOperatorParam.java
new file mode 100644
index 0000000..41be54d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/domain/param/SteOperatorParam.java
@@ -0,0 +1,32 @@
+package com.zy.asrs.domain.param;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2020-06-02
+ */
+@Data
+public class SteOperatorParam {
+
+    // 绌挎杞﹀彿
+    private Integer steNo;
+
+    // 鍛戒护绫诲瀷
+    private Short steTaskMode;
+
+    // 浠诲姟鍙�
+    private Integer taskNo = 0;
+
+    // 鐩爣搴撲綅-鎺�
+    private Short row;
+
+    // 鐩爣搴撲綅-鍒�
+    private Short bay;
+
+    // 鐩爣搴撲綅-灞�
+    private Short lev;
+
+    // 鎵�灞炲爢鍨涙満
+    private Integer crnNo;
+
+}
diff --git a/src/main/webapp/views/ste.html b/src/main/webapp/views/ste.html
index 0c3da80..85a8c0b 100644
--- a/src/main/webapp/views/ste.html
+++ b/src/main/webapp/views/ste.html
@@ -152,24 +152,22 @@
                     <fieldset>
                         <legend>鎵嬪姩鎿嶄綔</legend>
                         <div class="button-group">
-                            <button class="item" onclick="leftTake()">宸﹀嚭搴�</button>
-                            <button class="item" onclick="rightTake()">鍙冲嚭搴�</button>
-                            <button class="item" onclick="leftPut()">宸﹀叆搴�</button>
-                            <button class="item" onclick="rightPut()">鍙冲叆搴�</button>
-                            <button class="item" onclick="leftStockMove()">宸︾Щ搴�</button>
-                            <button class="item" onclick="rightStockMove()">鍙崇Щ搴�</button>
-                            <button class="item" onclick="oOrigin()">鍘熺偣</button>
-                            <button class="item" onclick="farPoint()">杩滅偣</button>
-                            <button class="item" onclick="aPoint()">A 鐐�</button>
-                            <button class="item" onclick="bPoint()">B 鐐�</button>
-                            <button class="item" onclick="moveLift()">宸︽惉绉�</button>
-                            <button class="item" onclick="moveRight()">鍙虫惉绉�</button>
-                            <button class="item" onclick="charging()">鍏呯數</button>
-                            <button class="item" onclick="pause()">宸︾洏鐐�</button>
-                            <button class="item" onclick="boot()">鍙崇洏鐐�</button>
-                            <button class="item" onclick="boot()">浠诲姟瀹屾垚</button>
-                            <button class="item" onclick="clearCommand()">娓呴櫎鍛戒护</button>
-                            <button class="item" onclick="handleReset()">澶嶄綅</button>
+                            <button class="item" onclick="steOperator(1)">宸﹀嚭搴�</button>
+                            <button class="item" onclick="steOperator(2)">鍙冲嚭搴�</button>
+                            <button class="item" onclick="steOperator(3)">宸﹀叆搴�</button>
+                            <button class="item" onclick="steOperator(4)">鍙冲叆搴�</button>
+                            <button class="item" onclick="steOperator(5)">宸︾Щ搴�</button>
+                            <button class="item" onclick="steOperator(6)">鍙崇Щ搴�</button>
+                            <button class="item" onclick="steOperator(7)">鍘熺偣</button>
+                            <button class="item" onclick="steOperator(8)">杩滅偣</button>
+                            <button class="item" onclick="steOperator(9)">A 鐐�</button>
+                            <button class="item" onclick="steOperator(10)">B 鐐�</button>
+                            <button class="item" onclick="steOperator(11)">宸︽惉绉�</button>
+                            <button class="item" onclick="steOperator(12)">鍙虫惉绉�</button>
+                            <button class="item" onclick="steOperator(13)">鍏呯數</button>
+                            <button class="item" onclick="steOperator(14)">宸︾洏鐐�</button>
+                            <button class="item" onclick="steOperator(15)">鍙崇洏鐐�</button>
+                            <button class="item" onclick="steOperator(16)">浠诲姟瀹屾垚</button>
                         </div>
                     </fieldset>
                 </div>
@@ -328,6 +326,17 @@
         })
     }
 
+    // 浠诲姟鎸囦护涓嬪彂
+    function steOperator(steTaskMode) {
+        http.post(baseUrl+"/ste/operator/ste", {
+            steNo: $('input[name="steSelect"]:checked').val(),
+            steTaskMode: steTaskMode
+        }, function (res) {
+            layer.msg(res.msg, {icon: 1});
+        });
+    }
+
+
     // ------------------------------------------------------------------------------------------------
 
     // 绌挎杞︿俊鎭〃鑾峰彇  ----- 琛ㄤ竴

--
Gitblit v1.9.1