From e16302f9d475c7cc4dd18c5abf1a23cb5502e362 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期三, 28 五月 2025 14:57:56 +0800
Subject: [PATCH] 密码验证加-

---
 src/main/java/com/whyc/service/Fbs9100SetparamService.java |  641 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 550 insertions(+), 91 deletions(-)

diff --git a/src/main/java/com/whyc/service/Fbs9100SetparamService.java b/src/main/java/com/whyc/service/Fbs9100SetparamService.java
index cd6647d..39d6411 100644
--- a/src/main/java/com/whyc/service/Fbs9100SetparamService.java
+++ b/src/main/java/com/whyc/service/Fbs9100SetparamService.java
@@ -5,15 +5,25 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import com.whyc.dto.DeviceTypeDTO;
 import com.whyc.dto.FBS9100_ComBase;
 import com.whyc.dto.Response;
+import com.whyc.mapper.BattInfMapper;
+import com.whyc.mapper.Fbs9100SetParamTempMapper;
 import com.whyc.mapper.Fbs9100SetparamMapper;
 import com.whyc.mapper.Li9130SetparamPlanMapper;
+import com.whyc.pojo.Battinf;
+import com.whyc.pojo.Fbs9100SetParamTemp;
 import com.whyc.pojo.Fbs9100Setparam;
+import com.whyc.pojo.Li9130SetparamPlan;
+import com.whyc.util.ActionUtil;
+import com.whyc.util.ThreadLocalUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.Date;
 import java.util.List;
 
 @Service
@@ -22,7 +32,12 @@
     private Fbs9100SetparamMapper mapper;
     @Resource
     private Li9130SetparamPlanMapper li9130Mapper;
-
+    @Resource
+    private BattInfMapper binfMapper;
+    @Resource
+    private Fbs9100SetParamTempMapper tmpMapper;
+    @Autowired
+    private PwrdevAcdcdataService pwrdevAcdcservice;
     //鏌ヨ璁惧鐨勫弬鏁�
     public Response serchdevParam(int devId) {
         sendCmdToFBS9100Dev(FBS9100_ComBase.CMD_GetDischargeParm, 0, devId);
@@ -33,13 +48,56 @@
         return new Response().set(1, pageInfo);
     }
 
-    //鍙抽敭鏌ョ湅鍙傛暟鍜屽脊鍑烘鐨勫埛鏂版寜閽�-----BTS鍋滄
+    //鍙抽敭鏌ョ湅鍙傛暟鍜屽脊鍑烘鐨勫埛鏂版寜閽�-----BTS鍋滄61850锛�6184
     public Response serchbyDev_id(int num, Integer testCmd, int devId, int battGroupNum) {
         boolean bl = sendCmdToFBS9100Dev2(num, testCmd != null ? testCmd : 0, devId, battGroupNum);
-        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId);
+        if ((devId / 100000 == DeviceTypeDTO.DEVICE6185) && (num == FBS9100_ComBase.CMD_Start)) {//褰撳惎鍔ㄦ斁鐢佃澶囦负6185鏃�
+            //灏嗕簩娆℃斁鐢佃〃涓數姹犵粍id鐨刬scharge鏀逛负1
+            //鍏堟煡璇㈠嚭鐢垫睜缁刬d
+            int battGroupId = 0;
+            QueryWrapper queryWrapper = new QueryWrapper();
+            queryWrapper.eq("FBSDeviceId", devId);
+            queryWrapper.eq("GroupIndexInFBSDevice", battGroupNum - 1);
+            queryWrapper.last("limit 1");
+            Battinf binf = binfMapper.selectOne(queryWrapper);
+            if (binf != null) {
+                battGroupId = binf.getBattGroupId();
+            }
+            //淇敼ischarge鏀逛负1
+            UpdateWrapper wrapper = new UpdateWrapper();
+            wrapper.set("is_charge", 1);
+            wrapper.eq("battGroupId", battGroupId);
+            tmpMapper.update((Fbs9100SetParamTemp) ActionUtil.objeNull, wrapper);
+
+        }
+        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId,battGroupNum-1);
+        /*閲嶅簡bts4810(61850)
+        鐩墠瀹㈡埛鐨勮礋杞界數娴佹瘮杈冨皬锛屽厖鏀剧數鍙傛暟璁剧疆鏃讹紝灏忎簬0.1C10鐨�,鐢垫祦鍊艰姹傝兘鑷姩璇嗗埆锛�
+        閲囩敤涓�澶╁唴鐢垫祦骞冲潎鍊兼潵鏀剧數銆傝礋杞界數娴佸ぇ浜�0.1C10.鐢�0.1C10鏀剧數瀹㈡埛瑕佹眰鑷姩濉厖,涓嶈浜轰负鐨勫綍鍏�.
+        锛�100AH鐢垫睜 璐熻浇鐢垫祦灏忎簬10A 灏辩敤璐熻浇鐢垫祦鐨勫钩鍧囧�� 澶т簬10A 灏辩敤10A锛�
+        */
+        if (devId / 100000 == DeviceTypeDTO.DEVICE6185){
+            //鏍规嵁devId鑾峰彇鏈烘埧id
+            QueryWrapper queryWrapper = new QueryWrapper();
+            queryWrapper.eq("FBSDeviceId", devId);
+            queryWrapper.last("limit 1");
+            Battinf binf = binfMapper.selectOne(queryWrapper);
+            if(binf!=null){
+                //鑾峰彇鐢垫簮鐨勮礋杞界數娴�
+                float loadCurr=pwrdevAcdcservice.getBts4810LoadCurr(binf.getStationId(),binf.getMonCapStd());
+                setparam.setLoadCurr(loadCurr);
+            }else {
+                setparam.setLoadCurr(0f);
+            }
+
+        }
         return new Response().setII(1, setparam, bl, bl == true ? "鏌ヨ鎴愬姛!" : "璁剧疆9100鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
     }
-
+    //鍐呴樆娴嬭瘯
+    public Response serchbyDev_id_res(int devId, int battGroupNum) {
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_Start, 50, devId, battGroupNum);
+        return new Response().set(1,bl, bl == true ? "鍐呴樆娴嬭瘯鎴愬姛!" : "鍐呴樆娴嬭瘯澶辫触,璇锋鏌ョ綉缁�!");
+    }
     //鍙抽敭鏌ョ湅鍙傛暟鍜屽脊鍑烘鐨勫埛鏂版寜閽�-----BTS鍋滄鍩虹涓婂姞涓妕b_li9130_setparam_plan琛ㄥ緱is_statup璁剧疆涓�0
     public Response serchbyDev_id_li9130(int num, Integer testCmd, int devId, int battGroupNum) {
         boolean bl = sendCmdToFBS9100Dev2(num, testCmd != null ? testCmd : 0, devId, battGroupNum);
@@ -47,8 +105,8 @@
         UpdateWrapper wrapper = new UpdateWrapper();
         wrapper.set("is_startup", 0);
         wrapper.eq("dev_id", devId);
-        int flag = li9130Mapper.update(null, wrapper);
-        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId);
+        int flag = li9130Mapper.update((Li9130SetparamPlan) ActionUtil.objeNull, wrapper);
+        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId,battGroupNum-1);
         return new Response().setIII(1, setparam, bl, flag > 0, bl == true ? "鏌ヨ鎴愬姛!" : "璁剧疆9100鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
     }
 
@@ -104,6 +162,28 @@
         }
         return new Response().set(1,bl,bl==true?"淇敼鍙傛暟鎴愬姛!":"璁剧疆61850鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
     }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆61853鏀剧數鍙傛暟璁剧疆
+    public Response update61853Param(Fbs9100Setparam fbs9100Setparam) {
+        Boolean b=mapper.update61853Param(fbs9100Setparam);
+        boolean bl=false;
+        if(b){
+            bl=sendCmdToFBS9100Dev(fbs9100Setparam.getNum().intValue(),0,fbs9100Setparam.getDevId().intValue());
+        }
+        return new Response().set(1,bl,bl==true?"淇敼鍙傛暟鎴愬姛!":"璁剧疆61853鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆6186鏀剧數鍙傛暟璁剧疆
+    public Response update6186Param(Fbs9100Setparam fbs9100Setparam) {
+        Boolean b=mapper.update6186Param(fbs9100Setparam);
+        boolean bl=false;
+        if(b){
+            bl=sendCmdToFBS9100Dev(fbs9100Setparam.getNum().intValue(),0,fbs9100Setparam.getDevId().intValue());
+        }
+        return new Response().set(1,bl,bl==true?"淇敼鍙傛暟鎴愬姛!":"璁剧疆61853鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+
 
     //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-A059鍙戦�佹寚浠�
     public Response updateA059Cmd(int opCmd, int devId) {
@@ -169,12 +249,195 @@
     {
         int m_cmd = cmd;
         int m_cmd_ack = cmd;
+        int stopTime=40;
         switch(m_cmd) {
             case FBS9100_ComBase.CMD_Start: m_cmd_ack = FBS9100_ComBase.CMD_StartAck; break;
             case FBS9100_ComBase.CMD_Stop: m_cmd_ack = FBS9100_ComBase.CMD_StopAck; break;
-            case FBS9100_ComBase.CMD_SetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_SetDischargeParmAck; break;
+            case FBS9100_ComBase.CMD_SetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_SetDischargeParmAck; stopTime=80;break;
             case FBS9100_ComBase.CMD_GetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_GetDischargeParmAck; break;
             case FBS9100_ComBase.CMd_SetIp_Tem: m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck; break;
+            case FBS9100_ComBase.CMd_SetIp_Per:
+                m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck;
+                break;
+            case FBS9100_ComBase.CMD_GetOffLineYHParam:
+                m_cmd_ack = FBS9100_ComBase.CMD_GetOffLineYHParam_ACK;
+                break;
+            case FBS9100_ComBase.CMD_SetOffLineYHParam:
+                m_cmd_ack = FBS9100_ComBase.CMD_SetOffLineYHParam_ACK;
+                break;
+            case FBS9100_ComBase.CMD_StartOffLine:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartOffLine_ACK;
+                break;
+            case FBS9100_ComBase.CMD_StopOffLine:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopOffLine_ACK;
+                break;
+            case FBS9100_ComBase.CMD_ResetSystem:
+                m_cmd_ack = FBS9100_ComBase.CMD_ResetSystemAck;
+                break;
+            //涓�浣撴満A059/fbo4830
+            case FBS9100_ComBase.CMD_StartDischarge:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartDischargeAck;
+                stopTime=80;
+                break;
+            case FBS9100_ComBase.CMD_StopDischarge:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopDischargeAck;
+                stopTime=80;
+                break;
+            case FBS9100_ComBase.CMD_PauseDischarge:
+                m_cmd_ack = FBS9100_ComBase.CMD_PauseDischargeAck;
+                break;
+            case FBS9100_ComBase.CMD_StartCharTest:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartCharTestAck;
+                break;
+            case FBS9100_ComBase.CMD_StopCharTest:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopCharTestAck;
+                break;
+            case FBS9100_ComBase.CMD_PauseCharTest:
+                m_cmd_ack = FBS9100_ComBase.CMD_PauseCharTestAck;
+                break;
+            case FBS9100_ComBase.CMD_StartHUOHUATest:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartHUOHUATestACK;
+                break;
+            case FBS9100_ComBase.CMD_StopHUOHUATest:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopHUOHUATestACK;
+                break;
+            case FBS9100_ComBase.CMD_PauseHUOHUATest:
+                m_cmd_ack = FBS9100_ComBase.CMD_PauseHUOHUATestACK;
+                break;
+            //鍥剧墖鏄剧ず
+            case FBS9100_ComBase.CMD_StartShowPic:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartShowPic_ACK;
+                break;
+            case FBS9100_ComBase.CMD_StopShowPic:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopShowPic_ACK;
+                break;
+            case FBS9100_ComBase.CMD_SetNowBatt:
+                m_cmd_ack = FBS9100_ComBase.CMD_SetNowBatt_ACK;
+                break;
+            case FBS9100_ComBase.CMD_ForceSetNowBatt:
+                m_cmd_ack = FBS9100_ComBase.CMD_ForceSetNowBatt_ACK;
+                break;
+            case FBS9100_ComBase.CMD_updateXZTime:
+                m_cmd_ack = FBS9100_ComBase.CMD_updateXZTimeAck;
+                break;
+            default:
+                return false;
+        }
+        UpdateWrapper updateWrapper=new UpdateWrapper();
+        updateWrapper.set("op_cmd",m_cmd);
+        if(test_type > 0 && cmd == FBS9100_ComBase.CMD_Start){					//鍚姩娴嬭瘯鏃舵湭鐐瑰嚮璁惧畾鍙傛暟鎸夐挳锛屼細鍑虹幇鍚姩鍐呴樆娴嬭瘯bug淇
+            updateWrapper.set("TestCmd",test_type);
+        }
+        updateWrapper.eq("dev_id",dev_id);
+        int flag=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,updateWrapper);
+        boolean res_exe = false;
+        if(flag>0)
+        {
+            PageHelper.startPage(1,1);
+            QueryWrapper queryWrapper=new QueryWrapper();
+            queryWrapper.eq("dev_id",dev_id);
+            for(int n=0; n<stopTime; n++)
+            {
+
+                Fbs9100Setparam fbs9100Setparam=mapper.selectOne(queryWrapper);
+                if(fbs9100Setparam!=null){
+                    if (fbs9100Setparam.getOpCmd() == m_cmd_ack) {
+                        res_exe = true;
+                        break;
+                    }
+                    try {
+                        Thread.sleep(250);
+                    } catch (InterruptedException e) {
+                        // TODO Auto-generated catch block
+                        e.printStackTrace();
+                    }
+                } else {
+                    break;
+                }
+            }
+        }
+        return res_exe;
+    }
+
+    //骞惰仈鐢垫簮鐨刢md鍜宎ck鏍¢獙  test_type  -->榛樿鍚姩娴嬭瘯鐨勭被鍨�
+    public boolean sendCmdToFBS9100Dev3(int cmd, int testCmd, int dev_id, int battGroupNum) {
+        int m_cmd = cmd;
+        int m_cmd_ack = cmd;
+        switch (m_cmd) {
+            case FBS9100_ComBase.CMD_Start:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartAck;
+                break;
+            case FBS9100_ComBase.CMD_Stop:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopAck;
+                break;
+            case FBS9100_ComBase.CMD_GetMutilMode_Param:
+                m_cmd_ack = FBS9100_ComBase.CMD_GetMutilMode_Param_Ack;
+                break;
+            case FBS9100_ComBase.CMD_SetMutilMode_Param:
+                m_cmd_ack = FBS9100_ComBase.CMD_SetMutilMode_Param_Ack;
+                break;
+            default:
+                return false;
+        }
+        UpdateWrapper updateWrapper = new UpdateWrapper();
+        updateWrapper.set("op_cmd", m_cmd);
+        updateWrapper.set("BattGroupNum", battGroupNum);
+        //璇诲彇鏃跺姞鍙傛暟鍦╰estcmd涓弬鏁扮被鍨嬶紝0-瀹炴椂鏍稿鍙傛暟 1-璁″垝鏍稿鍙傛暟 2-娲诲寲鍙傛暟 3-鍏呯數鍙傛暟 HV_mon_uppernum1
+        if (cmd == FBS9100_ComBase.CMD_GetMutilMode_Param) {
+            updateWrapper.set("HV_mon_uppernum1", testCmd);
+        }
+        if (cmd == FBS9100_ComBase.CMD_Start || cmd == FBS9100_ComBase.CMD_Stop) {
+            updateWrapper.set("TestCmd", testCmd);
+        }
+        updateWrapper.eq("dev_id", dev_id);
+        int flag = mapper.update((Fbs9100Setparam) ActionUtil.objeNull, updateWrapper);
+        boolean res_exe = false;
+        if (flag > 0) {
+            PageHelper.startPage(1, 1);
+            QueryWrapper queryWrapper = new QueryWrapper();
+            queryWrapper.eq("dev_id", dev_id);
+            for (int n = 0; n < 40; n++) {
+
+                Fbs9100Setparam fbs9100Setparam = mapper.selectOne(queryWrapper);
+                if (fbs9100Setparam != null) {
+                    if (fbs9100Setparam.getOpCmd() == m_cmd_ack) {
+                        res_exe = true;
+                        break;
+                    }
+                    try {
+                        Thread.sleep(500);
+                    } catch (InterruptedException e) {
+                        // TODO Auto-generated catch block
+                        e.printStackTrace();
+                    }
+                } else {
+                    break;
+                }
+            }
+        }
+        return res_exe;
+    }
+
+    //鏈烘埧鍛戒护鎿嶄綔璁惧鏃剁殑cmd鍜宎ck鏍¢獙  test_type  -->榛樿鍚姩娴嬭瘯鐨勭被鍨�
+    public boolean sendCmdToFBS9100Dev2(int cmd, int test_type, int dev_id, int battGroupNum) {
+        int m_cmd = cmd;
+        int m_cmd_ack = cmd;
+        switch (m_cmd) {
+            case FBS9100_ComBase.CMD_Start:
+                m_cmd_ack = FBS9100_ComBase.CMD_StartAck;
+                break;
+            case FBS9100_ComBase.CMD_Stop:
+                m_cmd_ack = FBS9100_ComBase.CMD_StopAck;
+                break;
+            case FBS9100_ComBase.CMD_SetDischargeParm:
+                m_cmd_ack = FBS9100_ComBase.CMD_SetDischargeParmAck;
+                break;
+            case FBS9100_ComBase.CMD_GetDischargeParm:
+                m_cmd_ack = FBS9100_ComBase.CMD_GetDischargeParmAck;
+                break;
+            case FBS9100_ComBase.CMd_SetIp_Tem:
+                m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck;
+                break;
             case FBS9100_ComBase.CMd_SetIp_Per:
                 m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck;
                 break;
@@ -231,90 +494,18 @@
             case FBS9100_ComBase.CMD_SetNowBatt:
                 m_cmd_ack = FBS9100_ComBase.CMD_SetNowBatt_ACK;
                 break;
-            case FBS9100_ComBase.CMD_ForceSetNowBatt:
-                m_cmd_ack = FBS9100_ComBase.CMD_ForceSetNowBatt_ACK;
-                break;
+
             default:
                 return false;
         }
         UpdateWrapper updateWrapper=new UpdateWrapper();
         updateWrapper.set("op_cmd",m_cmd);
-        if(test_type > 0 && cmd == FBS9100_ComBase.CMD_Start){					//鍚姩娴嬭瘯鏃舵湭鐐瑰嚮璁惧畾鍙傛暟鎸夐挳锛屼細鍑虹幇鍚姩鍐呴樆娴嬭瘯bug淇
-            updateWrapper.set("TestCmd",test_type);
-        }
-        updateWrapper.eq("dev_id",dev_id);
-        int flag=mapper.update(null,updateWrapper);
-        boolean res_exe = false;
-        if(flag>0)
-        {
-            PageHelper.startPage(1,1);
-            QueryWrapper queryWrapper=new QueryWrapper();
-            queryWrapper.eq("dev_id",dev_id);
-            for(int n=0; n<40; n++)
-            {
-
-                Fbs9100Setparam fbs9100Setparam=mapper.selectOne(queryWrapper);
-                if(fbs9100Setparam!=null){
-                    if(fbs9100Setparam.getOpCmd()==m_cmd_ack){
-                        res_exe = true;
-                        break;
-                    }
-                    try {
-                        Thread.sleep(250);
-                    } catch (InterruptedException e) {
-                        // TODO Auto-generated catch block
-                        e.printStackTrace();
-                    }
-                }else {
-                    break;
-                }
-            }
-        }
-        return res_exe;
-    }
-
-    //鏈烘埧鍛戒护鎿嶄綔璁惧鏃剁殑cmd鍜宎ck鏍¢獙  test_type  -->榛樿鍚姩娴嬭瘯鐨勭被鍨�
-    public boolean sendCmdToFBS9100Dev2(int cmd, int test_type, int dev_id, int battGroupNum)
-    {
-        int m_cmd = cmd;
-        int m_cmd_ack = cmd;
-        switch(m_cmd) {
-            case FBS9100_ComBase.CMD_Start: m_cmd_ack = FBS9100_ComBase.CMD_StartAck; break;
-            case FBS9100_ComBase.CMD_Stop: m_cmd_ack = FBS9100_ComBase.CMD_StopAck; break;
-            case FBS9100_ComBase.CMD_SetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_SetDischargeParmAck; break;
-            case FBS9100_ComBase.CMD_GetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_GetDischargeParmAck; break;
-            case FBS9100_ComBase.CMd_SetIp_Tem: m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck; break;
-            case FBS9100_ComBase.CMd_SetIp_Per: m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck; break;
-            case FBS9100_ComBase.CMD_GetOffLineYHParam: m_cmd_ack = FBS9100_ComBase.CMD_GetOffLineYHParam_ACK; break;
-            case FBS9100_ComBase.CMD_SetOffLineYHParam: m_cmd_ack = FBS9100_ComBase.CMD_SetOffLineYHParam_ACK; break;
-            case FBS9100_ComBase.CMD_StartOffLine: m_cmd_ack = FBS9100_ComBase.CMD_StartOffLine_ACK; break;
-            case FBS9100_ComBase.CMD_StopOffLine: m_cmd_ack = FBS9100_ComBase.CMD_StopOffLine_ACK; break;
-            case FBS9100_ComBase.CMD_ResetSystem: m_cmd_ack = FBS9100_ComBase.CMD_ResetSystemAck; break;
-            //涓�浣撴満A059
-            case FBS9100_ComBase.CMD_StartDischarge: m_cmd_ack = FBS9100_ComBase.CMD_StartDischargeAck; break;
-            case FBS9100_ComBase.CMD_StopDischarge: m_cmd_ack = FBS9100_ComBase.CMD_StopDischargeAck; break;
-            case FBS9100_ComBase.CMD_PauseDischarge: m_cmd_ack = FBS9100_ComBase.CMD_PauseDischargeAck; break;
-            case FBS9100_ComBase.CMD_StartCharTest: m_cmd_ack = FBS9100_ComBase.CMD_StartCharTestAck; break;
-            case FBS9100_ComBase.CMD_StopCharTest: m_cmd_ack = FBS9100_ComBase.CMD_StopCharTestAck; break;
-            case FBS9100_ComBase.CMD_PauseCharTest: m_cmd_ack = FBS9100_ComBase.CMD_PauseCharTestAck; break;
-            case FBS9100_ComBase.CMD_StartHUOHUATest: m_cmd_ack = FBS9100_ComBase.CMD_StartHUOHUATestACK; break;
-            case FBS9100_ComBase.CMD_StopHUOHUATest: m_cmd_ack = FBS9100_ComBase.CMD_StopHUOHUATestACK; break;
-            case FBS9100_ComBase.CMD_PauseHUOHUATest: m_cmd_ack = FBS9100_ComBase.CMD_PauseHUOHUATestACK; break;
-            //鍥剧墖鏄剧ず
-            case FBS9100_ComBase.CMD_StartShowPic: m_cmd_ack = FBS9100_ComBase.CMD_StartShowPic_ACK; break;
-            case FBS9100_ComBase.CMD_StopShowPic: m_cmd_ack = FBS9100_ComBase.CMD_StopShowPic_ACK; break;
-            case FBS9100_ComBase. CMD_SetNowBatt: m_cmd_ack = FBS9100_ComBase.CMD_SetNowBatt_ACK; break;
-
-            default: return false;
-        }
-        UpdateWrapper updateWrapper=new UpdateWrapper();
-        updateWrapper.set("op_cmd",m_cmd);
         updateWrapper.set("BattGroupNum",battGroupNum);
-        if(test_type > 0 && cmd == FBS9100_ComBase.CMD_Start){					//鍚姩娴嬭瘯鏃舵湭鐐瑰嚮璁惧畾鍙傛暟鎸夐挳锛屼細鍑虹幇鍚姩鍐呴樆娴嬭瘯bug淇
+        if(test_type > 0 && (cmd == FBS9100_ComBase.CMD_Start||cmd == FBS9100_ComBase.CMD_Stop)){					//鍚姩娴嬭瘯鏃舵湭鐐瑰嚮璁惧畾鍙傛暟鎸夐挳锛屼細鍑虹幇鍚姩鍐呴樆娴嬭瘯bug淇
             updateWrapper.set("TestCmd",test_type);
         }
         updateWrapper.eq("dev_id",dev_id);
-        int flag=mapper.update(null,updateWrapper);
+        int flag=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,updateWrapper);
         boolean res_exe = false;
         if(flag>0)
         {
@@ -331,7 +522,7 @@
                         break;
                     }
                     try {
-                        Thread.sleep(250);
+                        Thread.sleep(500);
                     } catch (InterruptedException e) {
                         // TODO Auto-generated catch block
                         e.printStackTrace();
@@ -354,7 +545,11 @@
             case FBS9100_ComBase.CMD_Start: m_cmd_ack = FBS9100_ComBase.CMD_StartAck; break;
             case FBS9100_ComBase.CMD_Stop: m_cmd_ack = FBS9100_ComBase.CMD_StopAck; break;
             case FBS9100_ComBase.CMD_EOperatingSwitch_ControlSwitch: m_cmd_ack = FBS9100_ComBase.CMD_EOperatingSwitch_ControlSwitchAck; break;
-
+            case FBS9100_ComBase.CMD_ResetSystem: m_cmd_ack = FBS9100_ComBase.CMD_ResetSystemAck; break;
+            case FBS9100_ComBase.CMD_ReadTest_Param: m_cmd_ack = FBS9100_ComBase.CMD_ReadTest_Param_ACK; break;
+            case FBS9100_ComBase.CMD_WriteTest_Param: m_cmd_ack = FBS9100_ComBase.CMD_WriteTest_Param_ACK; break;
+            case FBS9100_ComBase.CMD_StartDcdcTest: m_cmd_ack = FBS9100_ComBase.CMD_StartDcdcTest_ACK; break;
+            case FBS9100_ComBase.CMD_StopDcdcTest: m_cmd_ack = FBS9100_ComBase.CMD_StopDcdcTest_ACK; break;
             default:
                 return false;
         }
@@ -362,7 +557,7 @@
         UpdateWrapper updateWrapper=new UpdateWrapper();
         updateWrapper.set("op_cmd",m_cmd);
         updateWrapper.eq("dev_id",dev_id);
-        int flag=mapper.update(null,updateWrapper);
+        int flag=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,updateWrapper);
         boolean res_exe = false;
         if(flag>0)
         {
@@ -402,7 +597,7 @@
     public Response updateEOperatingSwitchStart(Fbs9100Setparam fbs9100Setparam) {
         UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
         update.set("TestCmd",fbs9100Setparam.getTestCmd()).eq("dev_id",fbs9100Setparam.getDevId());
-        Boolean b=mapper.update(null,update)==1;
+        Boolean b=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update)==1;
         boolean bl=false;
         if(b){
             bl=sendCmdToDev(FBS9100_ComBase.CMD_Start,fbs9100Setparam.getDevId().intValue());
@@ -420,7 +615,7 @@
         update.set("TestCmd",fbs9100Setparam.getTestCmd())
                 .set("FlowOver_Count",fbs9100Setparam.getFlowoverCount())
                 .eq("dev_id",fbs9100Setparam.getDevId());
-        Boolean b=mapper.update(null,update)==1;
+        Boolean b=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update)==1;
         boolean bl=false;
         if(b){
             bl=sendCmdToDev(FBS9100_ComBase.CMD_EOperatingSwitch_ControlSwitch,fbs9100Setparam.getDevId().intValue());
@@ -428,13 +623,18 @@
         return new Response().set(1,bl, bl ?"鐢垫搷寮�鍏虫帶鍒舵垚鍔�!":"鐢垫搷寮�鍏虫帶鍒跺け璐�,璇锋鏌ョ綉缁�!");
     }
 
-    public Response getEOperatingSwitch(int devId) {
+    public Response getEOperatingSwitch(int devId, int battGroupNum) {
+        //鏍规嵁璁惧id鍏堣缃數姹犵粍鍙�
+        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
+        update.set("BattGroupNum",battGroupNum).eq("dev_id",devId);
+        mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update);
+        //鍙戦�乧md
         boolean b = sendCmdToDev(FBS9100_ComBase.CMD_GetDischargeParm, devId);
         if (b) {
             QueryWrapper<Fbs9100Setparam> query = Wrappers.query();
             query.eq("dev_id", devId).last(" limit 1");
             Fbs9100Setparam param = mapper.selectOne(query);
-            return new Response().setII(1, true, param, null);
+            return new Response().setII(1, true, param, "");
         }
         return new Response().set(1, false, "璇诲彇鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
 
@@ -447,7 +647,17 @@
         wrapper.eq("dev_id", devId);
         boolean bl = sendCmdToFBS9100Dev(opCmd, 0, devId);
         Fbs9100Setparam a059param = mapper.selectOne(wrapper);
-        return new Response().setII(1, bl, a059param, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇A059鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+        return new Response().setII(1, bl, a059param, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇FBO_4830鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璇诲彇FBO_4831鏀剧數鍙傛暟
+    public Response searchFBO4831Param(int opCmd, int devId) {
+        PageHelper.startPage(1, 1);
+        QueryWrapper wrapper = new QueryWrapper();
+        wrapper.eq("dev_id", devId);
+        boolean bl = sendCmdToFBS9100Dev(opCmd, 0, devId);
+        Fbs9100Setparam a059param = mapper.selectOne(wrapper);
+        return new Response().setII(1, bl, a059param, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇FBO_4831鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
     }
 
     //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆FBO_4830鏀剧數鍙傛暟
@@ -459,4 +669,253 @@
         }
         return new Response().set(1, bl, bl == true ? "淇敼鍙傛暟鎴愬姛!" : "璁剧疆A059鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
     }
-}
\ No newline at end of file
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-鎺у埗FBO_4830鍏呮斁鐢靛仠姝�
+    public Response controllerFBO4830(int opCmd, int devId) {
+        boolean bl = sendCmdToFBS9100Dev(opCmd, 0, devId);
+        return new Response().set(1, bl, bl == true ? "鎿嶆帶FBO4830鎴愬姛!" : "鎿嶆帶FBO4830澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璇诲彇kgdy鏀剧數鍙傛暟
+    public Response searchKgdyParam(int opCmd, int devId) {
+        PageHelper.startPage(1, 1);
+        QueryWrapper wrapper = new QueryWrapper();
+        wrapper.eq("dev_id", devId);
+        boolean bl = sendCmdToFBS9100Dev(opCmd, 0, devId);
+        Fbs9100Setparam a059param = mapper.selectOne(wrapper);
+        return new Response().setII(1, bl, a059param, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇A059鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆kgdy鏀剧數鍙傛暟
+    public Response updateKgdyParam(Fbs9100Setparam a059setParam) {
+        Boolean b = mapper.updateKgdyParam(a059setParam);
+        boolean bl = false;
+        if (b) {
+            bl = sendCmdToFBS9100Dev(a059setParam.getOpCmd().intValue(), 0, a059setParam.getDevId().intValue());
+        }
+        return new Response().set(1, bl, bl == true ? "淇敼鍙傛暟鎴愬姛!" : "璁剧疆A059鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-鎺у埗骞惰仈鐢垫簮鍏呮斁鐢靛仠姝�
+    public Response controllerParalle(int opCmd, Integer testCmd, int battGroupNum, int devId) {
+        boolean bl = sendCmdToFBS9100Dev3(opCmd, testCmd, devId, battGroupNum);
+        return new Response().set(1, bl, bl == true ? "鎿嶆帶骞惰仈鐢垫簮鎴愬姛!" : "鎿嶆帶骞惰仈鐢垫簮澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璇诲彇骞惰仈鐢垫簮鏀剧數鍙傛暟
+    public Response searchParalleParam(int opCmd, int hvMonUppernum1, int battGroupNum, int devId) {
+        PageHelper.startPage(1, 1);
+        QueryWrapper wrapper = new QueryWrapper();
+        wrapper.eq("dev_id", devId);
+        //璇诲彇鏃跺姞鍙傛暟鍦╰estcmd涓弬鏁扮被鍨嬶紝0-瀹炴椂鏍稿鍙傛暟 1-璁″垝鏍稿鍙傛暟 2-娲诲寲鍙傛暟 3-鍏呯數鍙傛暟 HV_mon_uppernum1
+        boolean bl = sendCmdToFBS9100Dev3(opCmd, hvMonUppernum1, devId, battGroupNum);
+        Fbs9100Setparam paralleParam = mapper.selectOne(wrapper);
+        return new Response().setII(1, bl, paralleParam, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇骞惰仈鐢垫簮鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆骞惰仈鐢垫簮鏀剧數鍙傛暟
+    public Response updateParalleParam(Fbs9100Setparam a059setParam) {
+        Boolean b = mapper.updateParalleParam(a059setParam);
+        boolean bl = false;
+        if (b) {
+            bl = sendCmdToFBS9100Dev3(a059setParam.getOpCmd().intValue(), 0, a059setParam.getDevId().intValue(), a059setParam.getBattGroupNum());
+        }
+        return new Response().set(1, bl, bl == true ? "淇敼鍙傛暟鎴愬姛!" : "璁剧疆骞惰仈鐢垫簮鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    public Response searchPW(int devId) {
+        int opCmd = FBS9100_ComBase.CMD_GetDischargeParm;
+        return searchParam(devId,opCmd);
+    }
+    public Response searchML(int devId) {
+        int opCmd = FBS9100_ComBase.CMD_ReadTest_Param;
+        return searchParam(devId,opCmd);
+    }
+
+    private Response searchParam(int devId, int opCmd) {
+        boolean res = sendCmdToDev(opCmd, devId);
+        Fbs9100Setparam fbs9100Setparam = null;
+        if(res){
+            QueryWrapper<Fbs9100Setparam> query = Wrappers.query();
+            query.eq("dev_id",devId).last(" limit 1");
+            fbs9100Setparam = mapper.selectOne(query);
+        }
+        return new Response().setII(1, res, fbs9100Setparam, res ? "璇诲彇鍙傛暟鎴愬姛" : "璇诲彇鍙傛暟澶辫触,璇锋鏌ョ綉缁�");
+    }
+
+    public Response updatePW(Fbs9100Setparam param) {
+        Long devId = param.getDevId();
+        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
+        update.set("DisCurr",param.getDisCurr())
+                .set("DisCap",param.getDisCap())
+                .set("DisTime",param.getDisTime())
+                .set("GroupVol_LOW",param.getGroupvolLow())
+                .set("BattGroupNum",param.getBattGroupNum())
+                .set("DCVolHighLimit",param.getDCVolHighLimit())
+                .set("ChargeCurrSet",param.getChargeCurrSet())
+                .eq("dev_id",devId);
+        mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update);
+
+        boolean res = sendCmdToDev(FBS9100_ComBase.CMD_SetDischargeParm, devId.intValue());
+        return new Response().set(1, res, res ? "淇敼鍙傛暟鎴愬姛" : "璁剧疆鍙傛暟澶辫触,璇锋鏌ョ綉缁�");
+    }
+
+    public Response updateML(Fbs9100Setparam param) {
+        Long devId = param.getDevId();
+        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
+        update.set("dcdc1_outputvol",param.getDcdc1OutputVol())
+                .set("dcdc2_outputvol",param.getDcdc2OutputVol())
+                .set("dcdc1_outputcurr",param.getDcdc1OutputCurr())
+                .set("dcdc2_outputcurr",param.getDcdc2OutputCurr())
+                .set("screensaver_time",param.getScreenSaverTime())
+                .eq("dev_id",devId);
+        mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update);
+
+        boolean res = sendCmdToDev(FBS9100_ComBase.CMD_WriteTest_Param, devId.intValue());
+        return new Response().set(1, res, res ? "淇敼鍙傛暟鎴愬姛" : "璁剧疆鍙傛暟澶辫触,璇锋鏌ョ綉缁�");
+    }
+
+    public Response updateOpCmdAndTestCmd(int devId,int opCmd,int testCmd) {
+        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
+        update.set("TestCmd",testCmd).eq("dev_id",devId);
+        Boolean res=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update)==1;
+        boolean res2=false;
+        if(res){
+            res2=sendCmdToDev(opCmd,devId);
+        }
+        return new Response().set(1,res2, res2 ?"鍚姩娴嬭瘯鎴愬姛!":"鍚姩娴嬭瘯澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    public Response updateOpCmd(int devId,int opCmd) {
+        boolean res = sendCmdToDev(opCmd,devId);
+        return new Response().set(1,res, res ?"鍋滄娴嬭瘯鎴愬姛!":"鍋滄娴嬭瘯澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    public Response updatePWStartTest(int devId,int opCmd,int testCmd) {
+        return updateOpCmdAndTestCmd(devId,opCmd,testCmd);
+    }
+
+    public Response updatePWStopTest(int devId) {
+        return updateOpCmd(devId,FBS9100_ComBase.CMD_Stop);
+    }
+
+    public Response updatePWRestartDevice(int devId) {
+        return updateOpCmd(devId,FBS9100_ComBase.CMD_ResetSystem);
+    }
+
+    public Response searchLD6(int devId) {
+        int opCmd = FBS9100_ComBase.LD6_CMD_GETPARAM;
+        return searchParam(devId,opCmd);
+    }
+
+    public Response updateLD6(Fbs9100Setparam param) {
+        Long devId = param.getDevId();
+        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
+        update
+                .set("GroupVol_LOW",param.getGroupvolLow())
+                .set("MonomerVol_LOW",param.getMonomervolLow())
+                .set("MonomerLowCount",param.getMonomerLowCount())
+                .set("MonomerTmp_High",param.getMonomertmpHigh())
+                .set("DisTime",param.getDisTime())
+                .set("DisCap",param.getDisCap())
+                .set("AutoTestStartVol",param.getAutoTestStartVol())
+                .set("ChargeCurrSet",param.getChargeCurrSet())
+                .set("DisCurr",param.getDisCurr())
+                .set("BattGroupNum",param.getBattGroupNum())
+                .set("DCVolHighLimit",param.getDCVolHighLimit())
+                .eq("dev_id",devId);
+        mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update);
+
+        boolean res = sendCmdToDev(FBS9100_ComBase.CMD_SetDischargeParm, devId.intValue());
+        return new Response().set(1, res, res ? "淇敼鍙傛暟鎴愬姛" : "璁剧疆鍙傛暟澶辫触,璇锋鏌ョ綉缁�");
+    }
+
+   //璁剧疆鍙傛暟-61850-鍚屾鏃堕棿
+    public Response update61850SyncTime(int devId,String syncTime) {
+        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
+        update.set("OffLineYHstarttime",ThreadLocalUtil.parse(syncTime,1));//鍚屾鏃堕棿
+        update.eq("dev_id",devId);
+        mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update);
+        boolean bl=sendCmdToFBS9100Dev(FBS9100_ComBase.CMD_updateXZTime,0,devId);
+        return new Response().set(1, bl, bl ? "鍚屾鏃堕棿鎴愬姛" : "鍚屾鏃堕棿澶辫触,璇锋鏌ョ綉缁�");
+    }
+
+    public Response updateLD6StartTest(int devId) {
+        return updateOpCmd(devId,FBS9100_ComBase.LD6_CMD_STARTTEST);
+    }
+
+    public Response updateLD6StopTest(int devId) {
+        return updateOpCmd(devId,FBS9100_ComBase.LD6_CMD_STOPTEST);
+    }
+
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璇诲彇FBS9612鏀剧數鍙傛暟
+    public Response searchFBS9612Param(int opCmd, int devId) {
+        PageHelper.startPage(1, 1);
+        QueryWrapper wrapper = new QueryWrapper();
+        wrapper.eq("dev_id", devId);
+        boolean bl = sendCmdToFBS9100Dev(opCmd, 0, devId);
+        Fbs9100Setparam a059param = mapper.selectOne(wrapper);
+        return new Response().setII(1, bl, a059param, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇FBO_4830鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆FBS9612鏀剧數鍙傛暟
+    public Response updateFBS9612Param(Fbs9100Setparam a059setParam) {
+        Boolean b = mapper.updateFBS9612Param(a059setParam);
+        boolean bl = false;
+        if (b) {
+            bl = sendCmdToFBS9100Dev(a059setParam.getOpCmd().intValue(), 0, a059setParam.getDevId().intValue());
+        }
+        return new Response().set(1, bl, bl == true ? "淇敼鍙傛暟鎴愬姛!" : "璁剧疆A059鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-鎺у埗FBS9612鍏呮斁鐢靛仠姝�/鍐呴樆娴嬭瘯
+    public Response controllerFBS9612(int opCmd,int testType, int devId) {
+        boolean bl = sendCmdToFBS9100Dev(opCmd, testType, devId);
+        return new Response().set(1, bl, bl == true ? "鎿嶆帶FBO4830鎴愬姛!" : "鎿嶆帶FBO4830澶辫触,璇锋鏌ョ綉缁�!");
+    }
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璁剧疆6184鏀剧數鍙傛暟璁剧疆
+    public Response update6184Param(Fbs9100Setparam fbs9100Setparam) {
+        Boolean b=mapper.update6184Param(fbs9100Setparam);
+        boolean bl=false;
+        if(b){
+            bl=sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_SetDischargeParm,0,fbs9100Setparam.getDevId().intValue(),fbs9100Setparam.getBattGroupNum());
+        }
+        return new Response().set(1,bl,bl==true?"淇敼鍙傛暟鎴愬姛!":"璁剧疆6184鍙傛暟澶辫触,璇锋鏌ョ綉缁�!");
+    }
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-璇诲彇6184鏀剧數鍙傛暟
+    public Response get6184Param(int devId, int battGroupNum) {
+        PageHelper.startPage(1, 1);
+        QueryWrapper wrapper = new QueryWrapper();
+        wrapper.eq("dev_id", devId);
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_GetDischargeParm,0, devId, battGroupNum);
+        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId,battGroupNum-1);
+        return new Response().setII(1, bl, setparam, bl == true ? "璇诲彇鍙傛暟鎴愬姛!" : "璇诲彇6184鏀剧數鍙傛暟,璇锋鏌ョ綉缁�!");
+    }
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-6184璁惧杩滅▼閲嶅惎
+    public Response restart6184(int devId, int battGroupNum) {
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_ResetSystem,0, devId, battGroupNum);
+        return new Response().set(1,bl,bl==true?"6184璁惧杩滅▼閲嶅惎鎴愬姛!":"6184璁惧杩滅▼閲嶅惎澶辫触!");
+    }
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-6184杩滅▼鍚姩鏀剧數娴嬭瘯
+    public Response startDis6184(int devId, int battGroupNum) {
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_Start,FBS9100_ComBase.CMD_StartDischarge, devId, battGroupNum);
+        return new Response().set(1,bl,bl==true?"6184杩滅▼鍚姩鏀剧數娴嬭瘯鎴愬姛!":"6184杩滅▼鍚姩鏀剧數娴嬭瘯澶辫触!");
+    }
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-6184鍚姩鍐呴樆娴嬭瘯
+    public Response startRes6184(int devId, int battGroupNum) {
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_Start,FBS9100_ComBase.CMD_StartResDischarge, devId, battGroupNum);
+        return new Response().set(1,bl,bl==true?"鍚姩鍐呴樆娴嬭瘯鎴愬姛!":"鍚姩鍐呴樆娴嬭瘯澶辫触!");
+    }
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-6184鍋滄娴嬭瘯
+    public Response stop6184(int devId, int battGroupNum) {
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_Stop,FBS9100_ComBase.CMD_StopDischarge, devId, battGroupNum);
+        return new Response().set(1,bl,bl==true?"6184鍋滄娴嬭瘯鎴愬姛!":"6184鍋滄娴嬭瘯澶辫触!");
+    }
+
+    //鍦ㄧ嚎鐩戞祴-瀹炴椂鐩戞帶-6184鍋滄鍐呴樆娴嬭瘯
+    public Response stopRes6184(int devId, int battGroupNum) {
+        boolean bl = sendCmdToFBS9100Dev2(FBS9100_ComBase.CMD_Stop,FBS9100_ComBase.CMD_StopResDischarge, devId, battGroupNum);
+        return new Response().set(1,bl,bl==true?"鍋滄鍐呴樆娴嬭瘯鎴愬姛!":"鍋滄鍐呴樆娴嬭瘯澶辫触!");
+    }
+}

--
Gitblit v1.9.1