src/main/java/com/whyc/controller/FBS9100BattParamController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/FBS9100_ComBase.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/FBS9100BattParamMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/pojo/FBS9100BattParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/FBS9100BattParamService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/FBS9100BattParamController.java
New file @@ -0,0 +1,53 @@ package com.whyc.controller; import com.whyc.dto.Response; import com.whyc.pojo.FBS9100BattParam; import com.whyc.pojo.Fbs9100Sysparam; import com.whyc.service.FBS9100BattParamService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @Api(tags = "配网电源-电池参数") @RestController @RequestMapping("FBS9100BattParam") public class FBS9100BattParamController { @Autowired private FBS9100BattParamService service; @ApiOperation(value = "设置参数-电池") @PostMapping("updateBatt") public Response updateBatt(@RequestBody FBS9100BattParam param) { return service.updateBatt(param); } @ApiOperation(value = "读取参数-电池") @PostMapping("searchBatt") public Response searchBatt(@RequestParam int devId, @RequestParam int opCmd) { return service.searchBatt(devId,opCmd); } //@ApiOperation(value = "设置参数-放电参数") @PostMapping("updateDischargeParam") public Response updateDischargeParam(@RequestBody FBS9100BattParam param) { //return service.updateDischargeParam(param); TODO return null; } //@ApiOperation(value = "读取参数-放电参数") @PostMapping("searchDischargeParam") public Response searchDischargeParam(@RequestParam int devId, @RequestParam int opCmd) { //return service.searchDischargeParam(devId,opCmd); TODO return null; } //@ApiOperation(value = "设置参数-设备遥控") @PostMapping("updateDeviceOperation") public Response updateDeviceOperation(@RequestParam int devId,@RequestParam int opCmd,int testCmd) { //return service.updateDeviceOperation(devId,opCmd,testCmd); TODO return null; } } src/main/java/com/whyc/dto/FBS9100_ComBase.java
@@ -171,4 +171,10 @@ public static final int CMD_SetMutilMode_Param = 0xB5; //设置并联电源参数 public static final int CMD_SetMutilMode_Param_Ack = 0xB6; //设置并联电源参数成功 //配网电源-电池 public static final int CMD_GetBattParam = 0x36; //读取电池参数54 public static final int CMD_GetBattParamACK = 0x38; //读取电池参数成功56 public static final int CMD_SetBattParam = 0x37; //设置电池参数55 public static final int CMD_SetBattParamACK = 0x39; //设置电池参数成功57 } src/main/java/com/whyc/mapper/FBS9100BattParamMapper.java
New file @@ -0,0 +1,6 @@ package com.whyc.mapper; import com.whyc.pojo.FBS9100BattParam; public interface FBS9100BattParamMapper extends CustomMapper<FBS9100BattParam>{ } src/main/java/com/whyc/pojo/FBS9100BattParam.java
New file @@ -0,0 +1,195 @@ package com.whyc.pojo; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; @TableName(schema = "db_ram_db",value ="tb_fbs9100_battparam") public class FBS9100BattParam { private Long num; private String devIp; private Long devId; private Integer opCmd; @TableField("STD_CAP") private Integer stdCap; @TableField("STD_RES") private Integer stdRes; @TableField("BattGroupCount") private Integer battGroupCount; @TableField("EachGroupBattCount") private Integer eachGroupBattCount; @TableField("MonomerVol") private Float monomerVol; @TableField("GroupVol") private Float groupVol; @TableField("BattTemp") private Float battTemp; @TableField("FloatChargeVol") private Float floatChargeVol; @TableField("FloatChargeCurr") private Float floatChargeCurr; @TableField("OnlineVolLow") private Float onlineVolLow; @TableField("GroupConnType") private Integer groupConnType; @TableField("BattGroupCountSum") private Integer battGroupCountSum; @TableField("LiBattGroupCount") private Integer liBattGroupCount; @TableField("LiEachGroupBattCount") private Integer liEachGroupBattCount; @TableField("juncharge_vol") private Float junChargeVol; public Long getNum() { return num; } public void setNum(Long num) { this.num = num; } public String getDevIp() { return devIp; } public void setDevIp(String devIp) { this.devIp = devIp; } public Long getDevId() { return devId; } public void setDevId(Long devId) { this.devId = devId; } public Integer getOpCmd() { return opCmd; } public void setOpCmd(Integer opCmd) { this.opCmd = opCmd; } public Integer getStdCap() { return stdCap; } public void setStdCap(Integer stdCap) { this.stdCap = stdCap; } public Integer getStdRes() { return stdRes; } public void setStdRes(Integer stdRes) { this.stdRes = stdRes; } public Integer getBattGroupCount() { return battGroupCount; } public void setBattGroupCount(Integer battGroupCount) { this.battGroupCount = battGroupCount; } public Integer getEachGroupBattCount() { return eachGroupBattCount; } public void setEachGroupBattCount(Integer eachGroupBattCount) { this.eachGroupBattCount = eachGroupBattCount; } public Float getMonomerVol() { return monomerVol; } public void setMonomerVol(Float monomerVol) { this.monomerVol = monomerVol; } public Float getGroupVol() { return groupVol; } public void setGroupVol(Float groupVol) { this.groupVol = groupVol; } public Float getBattTemp() { return battTemp; } public void setBattTemp(Float battTemp) { this.battTemp = battTemp; } public Float getFloatChargeVol() { return floatChargeVol; } public void setFloatChargeVol(Float floatChargeVol) { this.floatChargeVol = floatChargeVol; } public Float getFloatChargeCurr() { return floatChargeCurr; } public void setFloatChargeCurr(Float floatChargeCurr) { this.floatChargeCurr = floatChargeCurr; } public Float getOnlineVolLow() { return onlineVolLow; } public void setOnlineVolLow(Float onlineVolLow) { this.onlineVolLow = onlineVolLow; } public Integer getGroupConnType() { return groupConnType; } public void setGroupConnType(Integer groupConnType) { this.groupConnType = groupConnType; } public Integer getBattGroupCountSum() { return battGroupCountSum; } public void setBattGroupCountSum(Integer battGroupCountSum) { this.battGroupCountSum = battGroupCountSum; } public Integer getLiBattGroupCount() { return liBattGroupCount; } public void setLiBattGroupCount(Integer liBattGroupCount) { this.liBattGroupCount = liBattGroupCount; } public Integer getLiEachGroupBattCount() { return liEachGroupBattCount; } public void setLiEachGroupBattCount(Integer liEachGroupBattCount) { this.liEachGroupBattCount = liEachGroupBattCount; } public Float getJunChargeVol() { return junChargeVol; } public void setJunChargeVol(Float junChargeVol) { this.junChargeVol = junChargeVol; } } src/main/java/com/whyc/service/FBS9100BattParamService.java
New file @@ -0,0 +1,100 @@ 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.FBS9100_ComBase; import com.whyc.dto.Response; import com.whyc.mapper.FBS9100BattParamMapper; import com.whyc.pojo.FBS9100BattParam; import org.springframework.stereotype.Service; import org.springframework.web.bind.annotation.RequestParam; import javax.annotation.Resource; @Service public class FBS9100BattParamService { @Resource private FBS9100BattParamMapper mapper; public Response updateBatt(FBS9100BattParam param) { UpdateWrapper<FBS9100BattParam> update = Wrappers.update(); Integer opCmd = param.getOpCmd(); update.set("BattGroupCount",param.getBattGroupCount()) .set("EachGroupBattCount",param.getEachGroupBattCount()) .set("FloatChargeVol",param.getFloatChargeVol()) .set("FloatChargeCurr",param.getFloatChargeCurr()) .set("OnlineVolLow",param.getOnlineVolLow()) .set("juncharge_vol",param.getJunChargeVol()) .eq("dev_id",param.getDevId()); boolean b = mapper.update(null, update) == 1; boolean bl = false; String msg = ""; if (b) { bl = sendCmdToParam(opCmd, param.getDevId().intValue()); if (bl) { msg = "修改成功!"; } else { msg = "设置参数失败,请检查网络!"; } } else { msg = "修改失败!"; } return new Response().set(1, bl, msg); } public Response searchBatt(int devId, int opCmd) { boolean b=sendCmdToParam(opCmd, devId); QueryWrapper<FBS9100BattParam> query = Wrappers.query(); query.eq("dev_id",devId); FBS9100BattParam param = mapper.selectOne(query); return new Response().setII(1,b,param,b?"获取参数成功!":"获取参数失败!"); } //系统参数命令操作设备时的cmd和ack校验 public boolean sendCmdToParam(int cmd, int dev_id) { int m_cmd = cmd; int m_cmd_ack = cmd; switch (m_cmd) { case FBS9100_ComBase.CMD_GetBattParam: m_cmd_ack = FBS9100_ComBase.CMD_GetBattParamACK; break; case FBS9100_ComBase.CMD_SetBattParam: m_cmd_ack = FBS9100_ComBase.CMD_SetBattParamACK; break; default: return false; } UpdateWrapper<FBS9100BattParam> update = Wrappers.update(); update.set("op_cmd", m_cmd); update.eq("dev_id", dev_id); int flag = mapper.update(null, update); boolean res_exe = false; if (flag > 0) { PageHelper.startPage(1, 1); QueryWrapper<FBS9100BattParam> query = Wrappers.query(); query.eq("dev_id", dev_id); for (int n = 0; n < 40; n++) { FBS9100BattParam param = mapper.selectOne(query); 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; } }