From d3696ce1ba6071f264aa3db8cc94bf090094a906 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期四, 11 五月 2023 09:19:05 +0800
Subject: [PATCH] 提升机命令封装

---
 src/main/java/com/zy/core/thread/LiftThread.java |   60 +++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 47 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/LiftThread.java b/src/main/java/com/zy/core/thread/LiftThread.java
index a656f4d..1da2b39 100644
--- a/src/main/java/com/zy/core/thread/LiftThread.java
+++ b/src/main/java/com/zy/core/thread/LiftThread.java
@@ -297,22 +297,19 @@
             liftProtocol.setTaskNo(assignCommand.getTaskNo());
             switch (assignCommand.getTaskMode()) {
                 case 1://涓婂崌涓�灞�
-                    command.setRun((short) 1);//鍗囬檷
-                    command.setDistPosition(++lev);
+                    command = getLiftUpDownCommand(++lev);//鑾峰彇鎻愬崌鏈轰笂鍗囦笅闄嶅懡浠�
                     break;
                 case 2://涓嬮檷涓�灞�
-                    command.setRun((short) 1);//涓嬮檷
-                    command.setDistPosition(--lev);
+                    command = getLiftUpDownCommand(--lev);//鑾峰彇鎻愬崌鏈轰笂鍗囦笅闄嶅懡浠�
                     break;
                 case 3://鏈夎揣姝h浆
-                    command.setRun((short) 6);
+                    command = getLiftTurnCommand(1);//鑾峰彇鎻愬崌鏈鸿浆鍔ㄥ懡浠�
                     break;
                 case 4://鏈夎揣鍙嶈浆
-                    command.setRun((short) 3);
+                    command = getLiftTurnCommand(2);//鑾峰彇鎻愬崌鏈鸿浆鍔ㄥ懡浠�
                     break;
                 case 5://澶嶄綅
-                    command.setRun((short) 0);
-                    command.setLiftLock(false);
+                    command = getResetCommand();//鑾峰彇澶嶄綅鍛戒护
                     break;
                 default:
             }
@@ -406,11 +403,8 @@
                 }
 
                 //涓嬪彂涓�鏉℃彁鍗囨満瑙i攣鍛戒护
-                LiftCommand liftCommand = new LiftCommand();
-                liftCommand.setRun((short) 0);
-                liftCommand.setLiftNo(command.getLiftNo());
-                liftCommand.setLiftLock(false);
-                if (write(liftCommand)) {
+                LiftCommand unlockCommand = getUnlockCommand(command.getLiftNo());
+                if (write(unlockCommand)) {
                     News.info("鎻愬崌鏈虹姸鎬佸凡瑙i攣锛屾彁鍗囨満鍙�={}锛屼换鍔℃暟鎹�={}", command.getLiftNo(), JSON.toJSON(command));
                 }
 
@@ -421,6 +415,46 @@
     }
 
     /**
+     * 鑾峰彇鎻愬崌鏈鸿В閿佸懡浠�
+     */
+    private LiftCommand getUnlockCommand(Short liftNo) {
+        LiftCommand command = new LiftCommand();
+        command.setRun((short) 0);
+        command.setLiftNo(liftNo);
+        command.setLiftLock(false);
+        return command;
+    }
+
+    /**
+     * 鑾峰彇澶嶄綅鍛戒护
+     */
+    private LiftCommand getResetCommand() {
+        LiftCommand command = new LiftCommand();
+        command.setRun((short) 0);
+        command.setLiftLock(false);
+        return command;
+    }
+
+    /**
+     * 鑾峰彇鎻愬崌鏈轰笂鍗囦笅闄嶅懡浠�
+     */
+    private LiftCommand getLiftUpDownCommand(Short lev) {
+        LiftCommand command = new LiftCommand();
+        command.setRun((short) 1);//鍗囬檷
+        command.setDistPosition(lev);
+        return command;
+    }
+
+    /**
+     * 鑾峰彇鎻愬崌鏈鸿浆鍔ㄥ懡浠わ紝direction锛�1=銆嬫湁璐ф杞紝2=銆嬫湁璐у弽杞�
+     */
+    private LiftCommand getLiftTurnCommand(Integer direction) {
+        LiftCommand command = new LiftCommand();
+        command.setRun(direction == 1 ? (short) 6 : (short) 3);
+        return command;
+    }
+
+    /**
      * 鍒濆鍖栨彁鍗囨満
      */
     private void initLift() {

--
Gitblit v1.9.1