whyclxw
2020-11-07 723dbf9bb5c42507d1c7381a33a7ca2bd8437eef
蓄电池的实时查询
4个文件已添加
2个文件已修改
389 ■■■■■ 已修改文件
DyEnvir_system/src/com/fgkj/actions/partinsystem/Battery_monitorAction.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/dao/BaseDAO.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/dao/BaseDAOFactory.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/partinsystem/dto/Battery_monitor.java 225 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/partinsystem/impl/Battery_monitorImpl.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/partinsystem/service/Battery_monitorService.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/actions/partinsystem/Battery_monitorAction.java
New file
@@ -0,0 +1,23 @@
package com.fgkj.actions.partinsystem;
import com.fgkj.actions.ActionUtil;
import com.fgkj.partinsystem.dto.Battery_monitor;
import com.fgkj.partinsystem.service.Battery_monitorService;
import com.fgkj.services.ServiceModel;
public class Battery_monitorAction extends ActionUtil{
    private Battery_monitorService service=new Battery_monitorService();
    private String json;
    private String result;
    //根据参试设备id查询设备的实时数据
    public String serchByCondition() {
        Battery_monitor ac=ActionUtil.getGson(ActionUtil.time_yyyyMMddHHmmss).fromJson(json, Battery_monitor.class);
        ServiceModel model=service.serchByCondition(ac);
        result=tojson(model);
        return SUCCESS;
    }
}
DyEnvir_system/src/com/fgkj/dao/BaseDAO.java
@@ -119,6 +119,7 @@
    public static final int  INVERTER_ELE=62;
    public static final int  MEDVOLDC_CONVERTER=63;
    public static final int  RELIABLE_BOARD=64;
    public static final int  BATTERY_MONITOR=65;
    
        
    public boolean add(Object obj); // 添加
DyEnvir_system/src/com/fgkj/dao/BaseDAOFactory.java
@@ -52,6 +52,7 @@
import com.fgkj.elemachinery.impl.Motor_readdataImpl;
import com.fgkj.elemachinery.impl.Subject_motor_stateImpl;
import com.fgkj.partinsystem.impl.Ac230v_upsImpl;
import com.fgkj.partinsystem.impl.Battery_monitorImpl;
import com.fgkj.partinsystem.impl.Cabin_boardImpl;
import com.fgkj.partinsystem.impl.Centra_frequencyImpl;
import com.fgkj.partinsystem.impl.Dc230v_battImpl;
@@ -146,6 +147,7 @@
        case 62:return new Inverter_eleImpl();
        case 63:return new Medvoldc_converterImpl();
        case 64:return new Reliable_boardImpl();
        case 65:return new Battery_monitorImpl();
        default :return null;
        }
    }
DyEnvir_system/src/com/fgkj/partinsystem/dto/Battery_monitor.java
New file
@@ -0,0 +1,225 @@
package com.fgkj.partinsystem.dto;
import java.util.Arrays;
import java.util.Date;
public class Battery_monitor {
    public static final int MAX_MON_COUNT = 400;
    private int dev_id ;            // '设备id',
    private Date record_time;        // '记录时间',
    private float group_vol ;        //'电池组电压',
    private float group_curr ;        //'电池组电流',
    private float max_vol ;            //'最高电压',
    private float min_vol ;            //'最低电压',
    private float max_tmp ;            //'最高温度',
    private int max_vol_count ;        // '电压高超标块数',
    private int min_vol_count ;        // '电压低超标块数',
    private int max_tmp_count ;        // '温度高超标块数',
    private float avg_vol ;            //'平均电压',
    private float avg_tmp ;            //'平均温度',
    private int fault_alm;            //'故障报警[0:无;1:正常停机;2:故障停机;3:故障分闸]',
    private int switch_state;        // '蓄电池开关板分合闸[0分闸;1合闸]',
    private int lighting_state;        // '应急照明电源模块状态:0:正常;1:故障',
    private int vol_hall_state;        // '电压霍尔状态:0:正常;1:故障',
    private int curr_hall_state;    // '电流霍尔状态:0:正常;1故障',
    private int chager_state;        // '充电装置工作状态:0:正常;1:故障',
    private int chager_type;        // '充电方式:1:补充电;2:全充电;4浮接',
    private float[] mon_vols;        //单体电压
    private float[] mon_tmps;        //单体温度
    public Battery_monitor() {
        mon_vols = new float[MAX_MON_COUNT];
        mon_tmps = new float[MAX_MON_COUNT];
    }
    public Battery_monitor(int dev_id) {
        this.dev_id = dev_id;
        mon_vols = new float[MAX_MON_COUNT];
        mon_tmps = new float[MAX_MON_COUNT];
    }
    public static int getMaxMonCount() {
        return MAX_MON_COUNT;
    }
    public int getDev_id() {
        return dev_id;
    }
    public Date getRecord_time() {
        return record_time;
    }
    public float getGroup_vol() {
        return group_vol;
    }
    public float getGroup_curr() {
        return group_curr;
    }
    public float getMax_vol() {
        return max_vol;
    }
    public float getMin_vol() {
        return min_vol;
    }
    public float getMax_tmp() {
        return max_tmp;
    }
    public int getMax_vol_count() {
        return max_vol_count;
    }
    public int getMin_vol_count() {
        return min_vol_count;
    }
    public int getMax_tmp_count() {
        return max_tmp_count;
    }
    public float getAvg_vol() {
        return avg_vol;
    }
    public float getAvg_tmp() {
        return avg_tmp;
    }
    public int getFault_alm() {
        return fault_alm;
    }
    public int getSwitch_state() {
        return switch_state;
    }
    public int getLighting_state() {
        return lighting_state;
    }
    public int getVol_hall_state() {
        return vol_hall_state;
    }
    public int getCurr_hall_state() {
        return curr_hall_state;
    }
    public int getChager_state() {
        return chager_state;
    }
    public int getChager_type() {
        return chager_type;
    }
    public float[] getMon_vols() {
        return mon_vols;
    }
    public float[] getMon_tmps() {
        return mon_tmps;
    }
    public void setDev_id(int dev_id) {
        this.dev_id = dev_id;
    }
    public void setRecord_time(Date record_time) {
        this.record_time = record_time;
    }
    public void setGroup_vol(float group_vol) {
        this.group_vol = group_vol;
    }
    public void setGroup_curr(float group_curr) {
        this.group_curr = group_curr;
    }
    public void setMax_vol(float max_vol) {
        this.max_vol = max_vol;
    }
    public void setMin_vol(float min_vol) {
        this.min_vol = min_vol;
    }
    public void setMax_tmp(float max_tmp) {
        this.max_tmp = max_tmp;
    }
    public void setMax_vol_count(int max_vol_count) {
        this.max_vol_count = max_vol_count;
    }
    public void setMin_vol_count(int min_vol_count) {
        this.min_vol_count = min_vol_count;
    }
    public void setMax_tmp_count(int max_tmp_count) {
        this.max_tmp_count = max_tmp_count;
    }
    public void setAvg_vol(float avg_vol) {
        this.avg_vol = avg_vol;
    }
    public void setAvg_tmp(float avg_tmp) {
        this.avg_tmp = avg_tmp;
    }
    public void setFault_alm(int fault_alm) {
        this.fault_alm = fault_alm;
    }
    public void setSwitch_state(int switch_state) {
        this.switch_state = switch_state;
    }
    public void setLighting_state(int lighting_state) {
        this.lighting_state = lighting_state;
    }
    public void setVol_hall_state(int vol_hall_state) {
        this.vol_hall_state = vol_hall_state;
    }
    public void setCurr_hall_state(int curr_hall_state) {
        this.curr_hall_state = curr_hall_state;
    }
    public void setChager_state(int chager_state) {
        this.chager_state = chager_state;
    }
    public void setChager_type(int chager_type) {
        this.chager_type = chager_type;
    }
    public void setMon_vols(float[] mon_vols) {
        this.mon_vols = mon_vols;
    }
    public void setMon_tmps(float[] mon_tmps) {
        this.mon_tmps = mon_tmps;
    }
    @Override
    public String toString() {
        return "Battery_monitor [dev_id=" + dev_id + ", record_time=" + record_time + ", group_vol=" + group_vol
                + ", group_curr=" + group_curr + ", max_vol=" + max_vol + ", min_vol=" + min_vol + ", max_tmp="
                + max_tmp + ", max_vol_count=" + max_vol_count + ", min_vol_count=" + min_vol_count + ", max_tmp_count="
                + max_tmp_count + ", avg_vol=" + avg_vol + ", avg_tmp=" + avg_tmp + ", fault_alm=" + fault_alm
                + ", switch_state=" + switch_state + ", lighting_state=" + lighting_state + ", vol_hall_state="
                + vol_hall_state + ", curr_hall_state=" + curr_hall_state + ", chager_state=" + chager_state
                + ", chager_type=" + chager_type + ", mon_vols=" + Arrays.toString(mon_vols) + ", mon_tmps="
                + Arrays.toString(mon_tmps) + "]";
    }
}
DyEnvir_system/src/com/fgkj/partinsystem/impl/Battery_monitorImpl.java
New file
@@ -0,0 +1,106 @@
package com.fgkj.partinsystem.impl;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.fgkj.dao.BaseDAO;
import com.fgkj.dao.CallBack;
import com.fgkj.dao.DAOHelper;
import com.fgkj.db.DBUtil;
import com.fgkj.partinsystem.dto.Battery_monitor;
public class Battery_monitorImpl implements BaseDAO,CallBack{
    @Override
    public List getResults(ResultSet rs) {
        // TODO Auto-generated method stub
        return null;
    }
    @Override
    public boolean add(Object obj) {
        // TODO Auto-generated method stub
        return false;
    }
    @Override
    public boolean update(Object obj) {
        // TODO Auto-generated method stub
        return false;
    }
    @Override
    public boolean del(Object obj) {
        // TODO Auto-generated method stub
        return false;
    }
    @Override
    public List searchAll() {
        // TODO Auto-generated method stub
        return null;
    }
    //根据参试设备id查询设备的实时数据
    @Override
    public List serchByCondition(Object obj) {
        Battery_monitor bm=(Battery_monitor) obj;
        String sql="select * from db_partinsystem.battery_monitor  where dev_id=? ";
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[bm.getDev_id()], new CallBack() {
            @Override
            public List getResults(ResultSet rs) {
                List list=new ArrayList();
                try {
                    while(rs.next()){
                        Battery_monitor b=new Battery_monitor();
                        b.setDev_id(rs.getInt("dev_id"));
                        b.setRecord_time(rs.getTimestamp("record_time"));
                        b.setGroup_vol(rs.getFloat("group_vol"));
                        b.setGroup_curr(rs.getFloat("group_curr"));
                        b.setMax_vol(rs.getFloat("max_vol"));
                        b.setMin_vol(rs.getFloat("min_vol"));
                        b.setMax_tmp(rs.getFloat("max_tmp"));
                        b.setMax_vol_count(rs.getInt("max_vol_count"));
                        b.setMin_vol_count(rs.getInt("min_vol_count"));
                        b.setMax_tmp_count(rs.getInt("max_tmp_count"));
                        b.setAvg_vol(rs.getFloat("avg_vol"));
                        b.setAvg_tmp(rs.getFloat("avg_tmp"));
                        b.setFault_alm(rs.getInt("fault_alm"));
                        b.setSwitch_state(rs.getInt("switch_state"));
                        b.setLighting_state(rs.getInt("lighting_state"));
                        b.setVol_hall_state(rs.getInt("vol_hall_state"));
                        b.setCurr_hall_state(rs.getInt("curr_hall_state"));
                        b.setChager_state(rs.getInt("chager_state"));
                        b.setChager_type(rs.getInt("chager_type"));
                        float[] mon_vols=new float[Battery_monitor.MAX_MON_COUNT];
                        float[] mon_tmps=new float[Battery_monitor.MAX_MON_COUNT];
                        for(int i=0;i<Battery_monitor.MAX_MON_COUNT;i++){
                            mon_vols[i]=rs.getFloat("mon_vol"+String.valueOf(i+1));
                            mon_tmps[i]=rs.getFloat("mon_tmp"+String.valueOf(i+1));
                        }
                        b.setMon_vols(mon_vols);
                        b.setMon_tmps(mon_tmps);
                        list.add(b);
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return list;
            }
        });
        return list;
    }
    @Override
    public List serchByInfo(Object obj) {
        // TODO Auto-generated method stub
        return null;
    }
}
DyEnvir_system/src/com/fgkj/partinsystem/service/Battery_monitorService.java
New file
@@ -0,0 +1,32 @@
package com.fgkj.partinsystem.service;
import java.util.List;
import com.fgkj.dao.BaseDAO;
import com.fgkj.dao.BaseDAOFactory;
import com.fgkj.services.ServiceModel;
public class Battery_monitorService {
    private BaseDAO dao;
    private ServiceModel model;
    public Battery_monitorService() {
        super();
        this.dao=BaseDAOFactory.getBaseDAO(BaseDAO.BATTERY_MONITOR);
        this.model=new ServiceModel();
    }
    //根据参试设备id查询设备的实时数据
    public ServiceModel serchByCondition(Object obj) {
        List list=dao.serchByCondition(obj);
        if(list!=null&&list.size()>0){
            model.setCode(1);
            model.setData(list);
            model.setMsg("查询成功!");
        }else{
            model.setCode(0);
            model.setMsg("查询失败!");
        }
        return model;
    }
}