From b9b396b7df56fd8c76005b3856fc1fd8fbc02ee7 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期一, 02 十二月 2024 16:20:01 +0800 Subject: [PATCH] 控制管理 --- src/main/java/com/whyc/service/PowerSetparmService.java | 177 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 177 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/whyc/service/PowerSetparmService.java b/src/main/java/com/whyc/service/PowerSetparmService.java index e1f1255..0bd2a1f 100644 --- a/src/main/java/com/whyc/service/PowerSetparmService.java +++ b/src/main/java/com/whyc/service/PowerSetparmService.java @@ -1,7 +1,184 @@ package com.whyc.service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.github.pagehelper.PageHelper; +import com.whyc.dto.PowerParamCmd; +import com.whyc.dto.Response; +import com.whyc.mapper.PowerSetparmMapper; +import com.whyc.pojo.db_power_fk_rt.PowerSetparm; +import com.whyc.util.ActionUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Service; @Service public class PowerSetparmService { + @Autowired(required = false) + private PowerSetparmMapper mapper; + + //鏈烘埧鍛戒护鎿嶄綔璁惧鏃剁殑cmd鍜宎ck鏍¢獙 + public boolean sendCmdToParam(int cmd, int powerId) { + int m_cmd = cmd; + int m_cmd_ack = cmd; + switch (m_cmd) { + case PowerParamCmd.CMD_WritePowerOpen: + m_cmd_ack = PowerParamCmd.CMD_WritePowerOpen_Ack; + break; + case PowerParamCmd.CMD_WriteClearAlm: + m_cmd_ack = PowerParamCmd.CMD_WriteClearAlm_Ack; + break; + case PowerParamCmd.CMD_WriteVBus_Vref: + m_cmd_ack = PowerParamCmd.CMD_WriteVBus_Vref_Ack; + break; + case PowerParamCmd.CMD_WritePowerClose: + m_cmd_ack = PowerParamCmd.CMD_WritePowerClose_Ack; + break; + case PowerParamCmd.CMD_WriteLLC_BuckVol: + m_cmd_ack = PowerParamCmd.CMD_WriteLLC_BuckVol_Ack; + break; + case PowerParamCmd.CMD_WriteLLC_BuckCurr: + m_cmd_ack = PowerParamCmd.CMD_WriteLLC_BuckCurr_Ack; + break; + case PowerParamCmd.CMD_WriteTestModel: + m_cmd_ack = PowerParamCmd.CMD_WriteTestModel_Ack; + break; + default: + return false; + } + UpdateWrapper updateWrapper=new UpdateWrapper(); + updateWrapper.set("op_cmd",m_cmd); + updateWrapper.eq("power_id",powerId); + int flag=mapper.update((PowerSetparm) ActionUtil.objeNull,updateWrapper); + boolean res_exe = false; + if(flag>0) + { + PageHelper.startPage(1,1); + QueryWrapper queryWrapper=new QueryWrapper(); + queryWrapper.eq("dev_id",powerId); + for(int n=0; n<40; n++) + { + + PowerSetparm param=mapper.selectOne(queryWrapper); + if(param!=null){ + if(param.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; + } + + //鎺у埗鐢垫簮寮�鏈� + public Response controllPowerOpen(Integer powerId) { + boolean bl=sendCmdToParam(PowerParamCmd.CMD_WritePowerOpen,powerId); + return new Response().set(1,bl, bl == true ? "鐢垫簮寮�鏈烘垚鍔�!" : "鐢垫簮寮�鏈哄け璐�,璇锋鏌ョ綉缁�!"); + } + //娓呴櫎鍙樻崲鍣ㄦ晠闅� + public Response controllClearAlm(Integer powerId) { + boolean bl=sendCmdToParam(PowerParamCmd.CMD_WriteClearAlm,powerId); + return new Response().set(1,bl, bl == true ? "娓呴櫎鍙樻崲鍣ㄦ晠闅滄垚鍔�!" : "娓呴櫎鍙樻崲鍣ㄦ晠闅滃け璐�,璇锋鏌ョ綉缁�!"); + } + //璁剧疆鐢垫簮宸ヤ綔妯″紡:testModeSet(03-閫嗗彉骞剁綉06-PFC宸ヤ綔) + public Response controllTestModel(Integer powerId, Integer testModeSet) { + boolean bl = false; + String msg = ""; + UpdateWrapper updateWrapper=new UpdateWrapper(); + updateWrapper.set("testmode_set",testModeSet); + updateWrapper.eq("power_id",powerId); + int flag=mapper.update((PowerSetparm) ActionUtil.objeNull,updateWrapper); + if (flag>0) { + bl=sendCmdToParam(PowerParamCmd.CMD_WriteVBus_Vref,powerId); + if (bl) { + flag = 1; + msg = "淇敼妯″紡鍙傛暟鎴愬姛!"; + } else { + flag = 0; + msg = "璁剧疆鐢垫簮宸ヤ綔妯″紡澶辫触,璇锋鏌ョ綉缁�!"; + } + } else { + flag = 0; + msg = "淇敼妯″紡鍙傛暟澶辫触!"; + } + return new Response().set(1,flag>0?true:false,msg); + } + //璁剧疆PFC妯″紡VBus鐢靛帇 + public Response controllVBusVref(Integer powerId, Integer vbusIrefSet) { + boolean bl = false; + String msg = ""; + UpdateWrapper updateWrapper=new UpdateWrapper(); + updateWrapper.set("vbus_iref_set",vbusIrefSet); + updateWrapper.eq("power_id",powerId); + int flag=mapper.update((PowerSetparm) ActionUtil.objeNull,updateWrapper); + if (flag>0) { + bl=sendCmdToParam(PowerParamCmd.CMD_WriteVBus_Vref,powerId); + if (bl) { + flag = 1; + msg = "淇敼妯″紡鍙傛暟鎴愬姛!"; + } else { + flag = 0; + msg = "璁剧疆PFC妯″紡VBus鐢靛帇澶辫触,璇锋鏌ョ綉缁�!"; + } + } else { + flag = 0; + msg = "淇敼妯″紡鍙傛暟澶辫触!"; + } + return new Response().set(1,flag>0?true:false,msg); + } + //璁剧疆LLCBuck鐢靛帇 + public Response controllLLCBuckVol(Integer powerId, Integer llcBuckvolSet) { + boolean bl = false; + String msg = ""; + UpdateWrapper updateWrapper=new UpdateWrapper(); + updateWrapper.set("llc_buckvol_set",llcBuckvolSet); + updateWrapper.eq("power_id",powerId); + int flag=mapper.update((PowerSetparm) ActionUtil.objeNull,updateWrapper); + if (flag>0) { + bl=sendCmdToParam(PowerParamCmd.CMD_WriteVBus_Vref,powerId); + if (bl) { + flag = 1; + msg = "淇敼妯″紡鍙傛暟鎴愬姛!"; + } else { + flag = 0; + msg = "璁剧疆LLCBuck鐢靛帇澶辫触,璇锋鏌ョ綉缁�!"; + } + } else { + flag = 0; + msg = "淇敼妯″紡鍙傛暟澶辫触!"; + } + return new Response().set(1,flag>0?true:false,msg); + } + //璁剧疆LLCBuck鐢垫祦 + public Response controllLLCBuckCurr(Integer powerId, Integer llcBuckcurrSet) { + boolean bl = false; + String msg = ""; + UpdateWrapper updateWrapper=new UpdateWrapper(); + updateWrapper.set("llc_buckcurr_set",llcBuckcurrSet); + updateWrapper.eq("power_id",powerId); + int flag=mapper.update((PowerSetparm) ActionUtil.objeNull,updateWrapper); + if (flag>0) { + bl=sendCmdToParam(PowerParamCmd.CMD_WriteVBus_Vref,powerId); + if (bl) { + flag = 1; + msg = "淇敼妯″紡鍙傛暟鎴愬姛!"; + } else { + flag = 0; + msg = "璁剧疆LLCBuck鐢垫祦澶辫触,璇锋鏌ョ綉缁�!"; + } + } else { + flag = 0; + msg = "淇敼妯″紡鍙傛暟澶辫触!"; + } + return new Response().set(1,flag>0?true:false,msg); + } } \ No newline at end of file -- Gitblit v1.9.1