whyclxw
2024-04-28 b25b814a949d2065a61fd3167206ffb51a57af65
src/main/java/com/whyc/service/Fbs9100SetparamService.java
@@ -13,11 +13,16 @@
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.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
@@ -60,13 +65,17 @@
            UpdateWrapper wrapper = new UpdateWrapper();
            wrapper.set("is_charge", 1);
            wrapper.eq("battGroupId", battGroupId);
            tmpMapper.update(null, wrapper);
            tmpMapper.update((Fbs9100SetParamTemp) ActionUtil.objeNull, wrapper);
        }
        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId);
        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停止基础上加上tb_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);
@@ -74,7 +83,7 @@
        UpdateWrapper wrapper = new UpdateWrapper();
        wrapper.set("is_startup", 0);
        wrapper.eq("dev_id", devId);
        int flag = li9130Mapper.update(null, wrapper);
        int flag = li9130Mapper.update((Li9130SetparamPlan) ActionUtil.objeNull, wrapper);
        Fbs9100Setparam setparam = mapper.serchbyDev_id(devId);
        return new Response().setIII(1, setparam, bl, flag > 0, bl == true ? "查询成功!" : "设置9100参数失败,请检查网络!");
    }
@@ -264,6 +273,9 @@
            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;
        }
@@ -273,7 +285,7 @@
            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)
        {
@@ -334,7 +346,7 @@
            updateWrapper.set("TestCmd", testCmd);
        }
        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) {
            PageHelper.startPage(1, 1);
@@ -449,7 +461,7 @@
            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)
        {
@@ -490,6 +502,10 @@
            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;
        }
@@ -497,7 +513,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)
        {
@@ -537,7 +553,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());
@@ -555,7 +571,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());
@@ -567,14 +583,14 @@
        //根据设备id先设置电池组号
        UpdateWrapper<Fbs9100Setparam> update = Wrappers.update();
        update.set("BattGroupNum",battGroupNum).eq("dev_id",devId);
        mapper.update(null,update);
        mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update);
        //发送cmd
        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, "读取参数失败,请检查网络!");
@@ -667,6 +683,10 @@
        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);
@@ -690,16 +710,31 @@
                .set("DCVolHighLimit",param.getDCVolHighLimit())
                .set("ChargeCurrSet",param.getChargeCurrSet())
                .eq("dev_id",devId);
        mapper.update(null,update);
        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(null,update)==1;
        Boolean res=mapper.update((Fbs9100Setparam) ActionUtil.objeNull,update)==1;
        boolean res2=false;
        if(res){
            res2=sendCmdToDev(opCmd,devId);
@@ -745,10 +780,20 @@
                .set("BattGroupNum",param.getBattGroupNum())
                .set("DCVolHighLimit",param.getDCVolHighLimit())
                .eq("dev_id",devId);
        mapper.update(null,update);
        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) {
@@ -758,4 +803,32 @@
    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失败,请检查网络!");
    }
}