whyclxw
2022-01-04 d6e8aed36e90d587f4f0b7a056d8d4be3fbd37d3
在线监测-实时监控-LD9启停功能
6个文件已添加
371 ■■■■■ 已修改文件
src/main/java/com/whyc/controller/Ld9SetparamController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/mapper/Ld9SetparamMapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/Fbs9100sFodParam.java 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/Ld9Setparam.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/Ld9SetparamService.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/Ld9SetparamMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/Ld9SetparamController.java
New file
@@ -0,0 +1,24 @@
package com.whyc.controller;
import com.whyc.dto.Response;
import com.whyc.service.Ld9SetparamService;
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("LD9_setparamAction")
public class Ld9SetparamController {
    @Autowired
    private Ld9SetparamService service;
    @ApiOperation("LD9启停功能")
    @GetMapping("serchbyDev_id")
    public Response  serchbyDev_id(@RequestParam int num,@RequestParam int devId){
        return service.serchbyDev_id(num,devId);
    }
}
src/main/java/com/whyc/mapper/Ld9SetparamMapper.java
New file
@@ -0,0 +1,11 @@
package com.whyc.mapper;
import com.whyc.pojo.Ld9Setparam;
import java.util.List;
public interface Ld9SetparamMapper extends CustomMapper<Ld9Setparam>{
    ////LD9启停功能
    List<Ld9Setparam> serchbyDev_id(int devId);
}
src/main/java/com/whyc/pojo/Fbs9100sFodParam.java
New file
@@ -0,0 +1,150 @@
package com.whyc.pojo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
 * <p>
 *
 * </p>
 *
 * @author lxw
 * @since 2022-01-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(schema = "db_ram_db",value = "tb_fbs9100s_fod_param")
@ApiModel(value="Fbs9100sFodParam对象", description="")
public class Fbs9100sFodParam implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "num", type = IdType.AUTO)
    private Integer num;
    @ApiModelProperty(value = "设备id")
    private Integer devId;
    private Integer opCmd;
    private Integer testCmd;
    @ApiModelProperty(value = "电池组号")
    @TableField("GroupNum")
    private Integer GroupNum;
    @TableField("BattGroupNum")
    private Integer BattGroupNum;
    @ApiModelProperty(value = "组1标称容量")
    @TableField("STDCap_one")
    private Integer stdcapOne;
    @ApiModelProperty(value = "组1浮充电压")
    @TableField("FloatVol_one")
    private Double floatvolOne;
    @ApiModelProperty(value = "组1除硫强度")
    @TableField("Strength_one")
    private Double strengthOne;
    @ApiModelProperty(value = "组1养护强度")
    @TableField("YHStrength_one")
    private Double yhstrengthOne;
    @ApiModelProperty(value = "组1除硫天数")
    @TableField("TimeLong_one")
    private Integer timelongOne;
    @ApiModelProperty(value = "组2标称容量")
    @TableField("STDCap_two")
    private Integer stdcapTwo;
    @ApiModelProperty(value = "组2浮充电压")
    @TableField("FloatVol_two")
    private Double floatvolTwo;
    @ApiModelProperty(value = "组2除硫强度")
    @TableField("Strength_two")
    private Double strengthTwo;
    @ApiModelProperty(value = "组2养护强度")
    @TableField("YHStrength_two")
    private Double yhstrengthTwo;
    @ApiModelProperty(value = "组2除硫天数")
    @TableField("TimeLong_two")
    private Integer timelongTwo;
    @ApiModelProperty(value = "组3标称容量")
    @TableField("STDCap_three")
    private Integer stdcapThree;
    @ApiModelProperty(value = "组3浮充电压")
    @TableField("FloatVol_three")
    private Double floatvolThree;
    @ApiModelProperty(value = "组3除硫强度")
    @TableField("Strength_three")
    private Double strengthThree;
    @ApiModelProperty(value = "组3养护强度")
    @TableField("YHStrength_three")
    private Double yhstrengthThree;
    @ApiModelProperty(value = "组3除硫天数")
    @TableField("TimeLong_three")
    private Integer timelongThree;
    @ApiModelProperty(value = "组4标称容量")
    @TableField("STDCap_four")
    private Integer stdcapFour;
    @ApiModelProperty(value = "组4浮充电压")
    @TableField("FloatVol_four")
    private Double floatvolFour;
    @ApiModelProperty(value = "组4除硫强度")
    @TableField("Strength_four")
    private Double strengthFour;
    @ApiModelProperty(value = "组4养护强度")
    @TableField("YHStrength_four")
    private Double yhstrengthFour;
    @ApiModelProperty(value = "组4除硫天数")
    @TableField("TimeLong_four")
    private Integer timelongFour;
    @ApiModelProperty(value = "组5标称容量")
    @TableField("STDCap_five")
    private Integer stdcapFive;
    @ApiModelProperty(value = "组5浮充电压")
    @TableField("FloatVol_five")
    private Double floatvolFive;
    @ApiModelProperty(value = "组5除硫强度")
    @TableField("Strength_five")
    private Double strengthFive;
    @ApiModelProperty(value = "组5养护强度")
    @TableField("YHStrength_five")
    private Double yhstrengthFive;
    @ApiModelProperty(value = "组5除硫天数")
    @TableField("TimeLong_five")
    private Integer timelongFive;
}
src/main/java/com/whyc/pojo/Ld9Setparam.java
New file
@@ -0,0 +1,97 @@
package com.whyc.pojo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
 * <p>
 *
 * </p>
 *
 * @author lxw
 * @since 2022-01-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(schema = "db_ram_db",value = "tb_ld9_setparam")
@ApiModel(value="Ld9Setparam对象", description="")
public class Ld9Setparam implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "num", type = IdType.AUTO)
    private Long num;
    private Integer devId;
    private Integer opCmd;
    private Integer paramTeststartBattNum;
    private Integer paramCap;
    private Float paramDischargeCurr;
    private Float paramMonCurrHigh;
    private Float paramChargeCurr;
    private Float paramMonCurrLow;
    private Float paramOnlineVol;
    private Float paramChargeCurrLow;
    private Float paramChargeCapLow;
    private Integer paramOnlineVolRecover;
    private Integer paramModuleAddress;
    private Integer paramJunhengModel;
    private Float paramCapLow;
    private Integer paramDatasource;
    private Integer paramResArgs;
    private Float paramTmpHigh;
    private Float paramResHigh;
    @TableField(exist = false)
    private Integer battGroupId;
    @TableField(exist = false)
    private String stationName;
    @TableField(exist = false)
    private Integer fBSDeviceId;
    @TableField(exist = false)
    private String fbsDeviceIp;
    @TableField(exist = false)
    private String battGroupName;
    @TableField(exist = false)
    private Integer monCount;
    @TableField(exist = false)
    private Float monVolStd;
    @TableField(exist = false)
    private Float monCapStd;
}
src/main/java/com/whyc/service/Ld9SetparamService.java
New file
@@ -0,0 +1,72 @@
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.github.pagehelper.PageInfo;
import com.whyc.dto.FBS9100_ComBase;
import com.whyc.dto.Response;
import com.whyc.mapper.Ld9SetparamMapper;
import com.whyc.pojo.Fbs9100Setparam;
import com.whyc.pojo.Fbs9100Sysparam;
import com.whyc.pojo.Ld9Setparam;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class Ld9SetparamService {
    @Resource
    private Ld9SetparamMapper mapper;
    //LD9启停功能
    public Response serchbyDev_id(int num,int devId) {
        boolean bl=sendCmdToLd9Dev(num,devId);
        List list=mapper.serchbyDev_id(devId);
        PageInfo pageInfo=new PageInfo(list);
        return new Response().setII(1,pageInfo,bl,bl==true?"查询成功!":"设置9100参数失败,请检查网络!");
    }
    //机房命令操作设备时的cmd和ack校验
    public boolean sendCmdToLd9Dev(int cmd,int dev_id)
    {
        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_StartRES: m_cmd_ack = FBS9100_ComBase.CMD_StartRES_ACK; break;
            case FBS9100_ComBase.CMD_GetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_GetDischargeParmAck; break;
            default: return false;
        }
        UpdateWrapper updateWrapper=new UpdateWrapper();
        updateWrapper.set("op_cmd",m_cmd);
        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++)
            {
                Ld9Setparam ld9Setparam=mapper.selectOne(queryWrapper);
                if(ld9Setparam.getOpCmd()==m_cmd_ack){
                    res_exe = true;
                    break;
                }
                try {
                    Thread.sleep(250);
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }
        return res_exe;
    }
}
src/main/resources/mapper/Ld9SetparamMapper.xml
New file
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.whyc.mapper.Ld9SetparamMapper">
    <select id="serchbyDev_id" resultType="Ld9Setparam">
        select db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,db_battinf.tb_battinf.BattGroupName
                ,db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd
                ,db_ram_db.tb_LD9_setparam.dev_id,db_ram_db.tb_LD9_setparam.op_cmd,db_ram_db.tb_LD9_setparam.param_teststart_batt_num,db_ram_db.tb_LD9_setparam.param_cap,param_discharge_curr
                ,db_ram_db.tb_LD9_setparam.param_mon_curr_high,db_ram_db.tb_LD9_setparam.param_charge_curr,db_ram_db.tb_LD9_setparam.param_mon_curr_low,db_ram_db.tb_LD9_setparam.param_online_vol
                ,db_ram_db.tb_LD9_setparam.param_charge_curr_low,db_ram_db.tb_LD9_setparam.param_charge_cap_low,db_ram_db.tb_LD9_setparam.param_online_vol_recover,db_ram_db.tb_LD9_setparam.param_module_address
                ,db_ram_db.tb_LD9_setparam.param_junheng_model,db_ram_db.tb_LD9_setparam.param_cap_low,db_ram_db.tb_LD9_setparam.param_datasource,db_ram_db.tb_LD9_setparam.param_res_args,db_ram_db.tb_LD9_setparam.param_tmp_high,db_ram_db.tb_LD9_setparam.param_res_high
                from db_battinf.tb_battinf
                LEFT OUTER JOIN db_ram_db.tb_LD9_setparam on db_ram_db.tb_LD9_setparam.dev_id=db_battinf.tb_battinf.FBSDeviceId
                where  db_ram_db.tb_LD9_setparam.dev_id=#{devId}
    </select>
</mapper>