From cafb1288d41201c33b12bdfb979734241bfb296a Mon Sep 17 00:00:00 2001
From: whycxzp <glperry@163.com>
Date: 星期一, 14 四月 2025 13:48:10 +0800
Subject: [PATCH] 更新活化

---
 src/main/java/com/whyc/service/AbeStateService.java |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/whyc/service/AbeStateService.java b/src/main/java/com/whyc/service/AbeStateService.java
index 9fa1b70..2ab8705 100644
--- a/src/main/java/com/whyc/service/AbeStateService.java
+++ b/src/main/java/com/whyc/service/AbeStateService.java
@@ -1,16 +1,22 @@
 package com.whyc.service;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.pagehelper.PageHelper;
 import com.whyc.dto.Response;
 import com.whyc.mapper.AbeStateMapper;
 import com.whyc.pojo.db_abe_ram.AbeState;
+import com.whyc.util.ActionUtil;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 
 @Service
 public class AbeStateService {
+
+    public static final int CMD_StopHuoHua_Test	 					= 0x20;   	//鍋滄娲诲寲娴嬭瘯
+    public static final int CMD_StopHuoHua_TestAck 					= 0x21;   	//鍋滄娲诲寲娴嬭瘯鎴愬姛
 
     @Resource
     private AbeStateMapper mapper;
@@ -21,4 +27,48 @@
         AbeState abeState = mapper.selectOne(query);
         return new Response<AbeState>().set(1,abeState);
     }
+
+    public Response stopHuoHua() {
+        boolean flag = sendCmdToDev(CMD_StopHuoHua_Test);
+        return new Response().set(1,flag?1:0,flag?"鍋滄娲诲寲娴嬭瘯鎴愬姛":"鍋滄娲诲寲娴嬭瘯澶辫触");
+    }
+
+    public boolean sendCmdToDev(int opCmd) {
+        int m_cmd = opCmd;
+        int m_cmd_ack = opCmd;
+        switch(m_cmd) {
+            case CMD_StopHuoHua_Test: m_cmd_ack = CMD_StopHuoHua_TestAck; break;
+            default:
+                return false;
+        }
+        //鏇存柊op_cmd
+        UpdateWrapper<AbeState> updateWrapper = Wrappers.update();
+        updateWrapper.set("op_cmd",m_cmd);
+        int flag=mapper.update((AbeState) ActionUtil.objeNull,updateWrapper);
+        boolean res_exe = false;
+        if(flag>0)
+        {
+            QueryWrapper<AbeState> queryWrapper = Wrappers.query();
+            queryWrapper.last(" limit 1");
+            for(int n=0; n<80; n++)
+            {
+
+                AbeState param=mapper.selectOne(queryWrapper);
+                if(param!=null){
+                    if(param.getOpCmd()==m_cmd_ack){
+                        res_exe = true;
+                        break;
+                    }
+                    try {
+                        Thread.sleep(250);
+                    } catch (InterruptedException e) {
+                        e.printStackTrace();
+                    }
+                }else {
+                    break;
+                }
+            }
+        }
+        return res_exe;
+    }
 }

--
Gitblit v1.9.1