whyclxw
2020-11-11 d1697d781b768398e17f79ab842f462f58c88e6e
修改蓄电池和开关量板
4个文件已添加
5个文件已修改
440 ■■■■■ 已修改文件
DyEnvir_system/src/com/fgkj/actions/CsvFileDownloadAction.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/actions/partinsystem/Battery_monitorAction.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/actions/partinsystem/Switch_boardAction.java 43 ●●●●● 补丁 | 查看 | 原始文档 | 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/Switch_board.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/partinsystem/impl/Battery_monitorImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/partinsystem/impl/Switch_boardImpl.java 234 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/partinsystem/service/Switch_boardService.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DyEnvir_system/src/com/fgkj/actions/CsvFileDownloadAction.java
@@ -31,6 +31,7 @@
import com.fgkj.partinsystem.dto.Electrical_monitor_station;
import com.fgkj.partinsystem.dto.Inverter_ele;
import com.fgkj.partinsystem.dto.Reliable_board;
import com.fgkj.partinsystem.dto.Switch_board;
import com.fgkj.partinsystem.impl.Ac230v_upsImpl;
import com.fgkj.partinsystem.impl.Battery_monitorImpl;
import com.fgkj.partinsystem.impl.Cabin_boardImpl;
@@ -39,6 +40,7 @@
import com.fgkj.partinsystem.impl.Electrical_monitor_stationImpl;
import com.fgkj.partinsystem.impl.Inverter_eleImpl;
import com.fgkj.partinsystem.impl.Reliable_boardImpl;
import com.fgkj.partinsystem.impl.Switch_boardImpl;
import com.fgkj.services.ServiceModel;
import com.fgkj.services.User_logService;
import com.fgkj.watersystem.Impl.Water_realdataImpl;
@@ -231,7 +233,7 @@
        String path=str+File.separator+"tomcat7_csv"+File.separator;
        ServiceModel model=new ServiceModel();
        String msg="";
        if(cs.getExport_num()>=7&&cs.getExport_num()<=18){
        if(cs.getExport_num()>=7){
            createFileCsv_partinsystem(cs,path);
            model=searchStationSource(cs,path);
        /*}else if(cs.getExport_num()==8){
@@ -357,6 +359,13 @@
             rb.setRecord_time1(cs.getRecord_time1());
             rb.setNote(cs.getTablists());
             exportData=(new Reliable_boardImpl()).serchCSV(rb);
         }else if(cs.getExport_num()==19){        //开关量板
             Switch_board sb=new Switch_board();
             sb.setDev_id(cs.getDev_id());
             sb.setRecord_time(cs.getRecord_time());
             sb.setRecord_time1(cs.getRecord_time1());
             sb.setNote(cs.getTablists());
             exportData=(new Switch_boardImpl()).serchCSV(sb);
         }
         if(exportData==null&&exportData.size()<=0){
             Map row = new LinkedHashMap<String, String>();
DyEnvir_system/src/com/fgkj/actions/partinsystem/Battery_monitorAction.java
@@ -14,6 +14,7 @@
    
    //根据参试设备id查询设备的实时数据
    public String serchByCondition() {
        System.out.println(json);
        Battery_monitor ac=ActionUtil.getGson(ActionUtil.time_yyyyMMddHHmmss).fromJson(json, Battery_monitor.class);
        ServiceModel model=service.serchByCondition(ac);
        result=tojson(model);
@@ -33,5 +34,12 @@
        result=tojson(model);
        return SUCCESS;
    }
    public String getResult() {
        return result;
    }
    public void setJson(String json) {
        this.json = json;
    }
}
DyEnvir_system/src/com/fgkj/actions/partinsystem/Switch_boardAction.java
New file
@@ -0,0 +1,43 @@
package com.fgkj.actions.partinsystem;
import com.fgkj.actions.ActionUtil;
import com.fgkj.partinsystem.dto.Switch_board;
import com.fgkj.partinsystem.service.Switch_boardService;
import com.fgkj.services.ServiceModel;
public class Switch_boardAction extends ActionUtil{
    private Switch_boardService service=new Switch_boardService();
    private String json;
    private String result;
    //根据参试设备id查询设备的实时数据
    public String serchByCondition() {
        Switch_board ac=ActionUtil.getGson(ActionUtil.time_yyyyMMddHHmmss).fromJson(json, Switch_board.class);
        ServiceModel model=service.serchByCondition(ac);
        result=tojson(model);
        return SUCCESS;
    }
    //设备实时数据显示(前100笔数据服务器的时间)
    public String serchByInfo() {
        Switch_board ac=ActionUtil.getGson(ActionUtil.time_yyyyMMddHHmmss).fromJson(json, Switch_board.class);
        ServiceModel model=service.serchByInfo(ac);
        result=tojson(model);
        return SUCCESS;
    }
    //设备历史数据查询
    public String serchHistory() {
        Switch_board ac=ActionUtil.getGson(ActionUtil.time_yyyyMMddHHmmss).fromJson(json, Switch_board.class);
        ServiceModel model=service.serchHistory(ac);
        result=tojson(model);
        return SUCCESS;
    }
    public String getResult() {
        return result;
    }
    public void setJson(String json) {
        this.json = json;
    }
}
DyEnvir_system/src/com/fgkj/dao/BaseDAO.java
@@ -120,6 +120,7 @@
    public static final int  MEDVOLDC_CONVERTER=63;
    public static final int  RELIABLE_BOARD=64;
    public static final int  BATTERY_MONITOR=65;
    public static final int  SWITCH_BOARD=66;
    
        
    public boolean add(Object obj); // 添加
DyEnvir_system/src/com/fgkj/dao/BaseDAOFactory.java
@@ -62,6 +62,7 @@
import com.fgkj.partinsystem.impl.Medvoldc_converterImpl;
import com.fgkj.partinsystem.impl.Partinsystem_infImpl;
import com.fgkj.partinsystem.impl.Reliable_boardImpl;
import com.fgkj.partinsystem.impl.Switch_boardImpl;
import com.fgkj.tmphum.impl.Tmphum_rtImpl;
import com.fgkj.watersystem.Impl.Water_alarmImpl;
import com.fgkj.watersystem.Impl.Water_brachImpl;
@@ -148,6 +149,7 @@
        case 63:return new Medvoldc_converterImpl();
        case 64:return new Reliable_boardImpl();
        case 65:return new Battery_monitorImpl();
        case 66:return new Switch_boardImpl();
        default :return null;
        }
    }
DyEnvir_system/src/com/fgkj/partinsystem/dto/Switch_board.java
New file
@@ -0,0 +1,75 @@
package com.fgkj.partinsystem.dto;
import java.io.Serializable;
import java.util.Arrays;
import java.util.Date;
public class Switch_board implements Serializable{
      public static final int MAX_MON_COUNT = 192;
      private int num ;//,
      private int dev_id ;//COMMENT '设备id',
      private Date record_time ;//COMMENT '记录时间',
      private Date record_time1 ;//COMMENT '记录时间',
      private int  timing_data[];//定时数据
      private int  event_data[];//事件数据
      private String note;
    public Switch_board() {
        super();
        this.timing_data =new int[MAX_MON_COUNT];
        this.event_data =new int[MAX_MON_COUNT];
    }
    public int getNum() {
        return num;
    }
    public void setNum(int num) {
        this.num = num;
    }
    public int getDev_id() {
        return dev_id;
    }
    public void setDev_id(int dev_id) {
        this.dev_id = dev_id;
    }
    public Date getRecord_time() {
        return record_time;
    }
    public void setRecord_time(Date record_time) {
        this.record_time = record_time;
    }
    public int[] getTiming_data() {
        return timing_data;
    }
    public void setTiming_data(int[] timing_data) {
        this.timing_data = timing_data;
    }
    public int[] getEvent_data() {
        return event_data;
    }
    public void setEvent_data(int[] event_data) {
        this.event_data = event_data;
    }
    public Date getRecord_time1() {
        return record_time1;
    }
    public void setRecord_time1(Date record_time1) {
        this.record_time1 = record_time1;
    }
    public String getNote() {
        return note;
    }
    public void setNote(String note) {
        this.note = note;
    }
    @Override
    public String toString() {
        return "Switch_board [num=" + num + ", dev_id=" + dev_id
                + ", record_time=" + record_time + ", record_time1="
                + record_time1 + ", timing_data="
                + Arrays.toString(timing_data) + ", event_data="
                + Arrays.toString(event_data) + ", note=" + note + "]";
    }
}
DyEnvir_system/src/com/fgkj/partinsystem/impl/Battery_monitorImpl.java
@@ -50,7 +50,7 @@
    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() {
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{bm.getDev_id()}, new CallBack() {
            
            @Override
            public List getResults(ResultSet rs) {
@@ -106,7 +106,7 @@
        Date date=new Date();
        String table=DAOHelper.sdf_withOut.format(date);
        String sql="select * from db_partinsystem_history.battery_monitor_"+bm.getDev_id()+"_"+table+"  where dev_id=? limit 0,100";
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[bm.getDev_id()], new CallBack() {
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{bm.getDev_id()}, new CallBack() {
            
            @Override
            public List getResults(ResultSet rs) {
DyEnvir_system/src/com/fgkj/partinsystem/impl/Switch_boardImpl.java
New file
@@ -0,0 +1,234 @@
package com.fgkj.partinsystem.impl;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.fgkj.actions.ActionUtil;
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;
import com.fgkj.partinsystem.dto.Switch_board;
public class Switch_boardImpl 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) {
        Switch_board sb=(Switch_board) obj;
        String sql="select * from db_partinsystem.switch_board  where dev_id=? ";
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{sb.getDev_id()}, new CallBack() {
            @Override
            public List getResults(ResultSet rs) {
                List list=new ArrayList();
                try {
                    while(rs.next()){
                        Switch_board s=new Switch_board();
                        s.setDev_id(rs.getInt("dev_id"));
                        s.setRecord_time(rs.getTimestamp("record_time"));
                        int[] timing_data=new int[Switch_board.MAX_MON_COUNT];
                        int[] event_data=new int[Switch_board.MAX_MON_COUNT];
                        for(int i=0;i<Switch_board.MAX_MON_COUNT;i++){
                            timing_data[i]=rs.getInt("timing_data"+String.valueOf(i+1));
                            event_data[i]=rs.getInt("event_data"+String.valueOf(i+1));
                        }
                        s.setTiming_data(timing_data);
                        s.setEvent_data(event_data);
                        list.add(s);
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return list;
            }
        });
        return list;
    }
    //设备实时数据显示(前100笔数据服务器的时间)
    @Override
    public List serchByInfo(Object obj) {
        Switch_board sb=(Switch_board) obj;
        Date date=new Date();
        String table=DAOHelper.sdf_withOut.format(date);
        String sql="select * from db_partinsystem_history.switch_board_"+sb.getDev_id()+"_"+table+" where dev_id=? limit 0,100";
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{sb.getDev_id()}, new CallBack() {
            @Override
            public List getResults(ResultSet rs) {
                List list=new ArrayList();
                try {
                    while(rs.next()){
                        Switch_board s=new Switch_board();
                        s.setDev_id(rs.getInt("dev_id"));
                        s.setRecord_time(rs.getTimestamp("record_time"));
                        int[] timing_data=new int[Switch_board.MAX_MON_COUNT];
                        int[] event_data=new int[Switch_board.MAX_MON_COUNT];
                        for(int i=0;i<Switch_board.MAX_MON_COUNT;i++){
                            timing_data[i]=rs.getInt("timing_data"+String.valueOf(i+1));
                            event_data[i]=rs.getInt("event_data"+String.valueOf(i+1));
                        }
                        s.setTiming_data(timing_data);
                        s.setEvent_data(event_data);
                        list.add(s);
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return list;
            }
        });
        return list;
    }
    //设备历史数据查询
    public List serchHistory(Object obj) {
        Switch_board sb=(Switch_board) obj;
        String table=DAOHelper.sdf_withOut.format(sb.getRecord_time());
        String sql="select * from db_partinsystem_history.switch_board_"+sb.getDev_id()+"_"+table+" where dev_id=? and record_time >= ? and record_time <= ?  order by record_time asc";
        List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{sb.getDev_id(),sb.getRecord_time(),sb.getRecord_time1()}, new CallBack() {
            @Override
            public List getResults(ResultSet rs) {
                List list=new ArrayList();
                try {
                    while(rs.next()){
                        Switch_board s=new Switch_board();
                        s.setDev_id(rs.getInt("dev_id"));
                        s.setRecord_time(rs.getTimestamp("record_time"));
                        int[] timing_data=new int[Switch_board.MAX_MON_COUNT];
                        int[] event_data=new int[Switch_board.MAX_MON_COUNT];
                        for(int i=0;i<Switch_board.MAX_MON_COUNT;i++){
                            timing_data[i]=rs.getInt("timing_data"+String.valueOf(i+1));
                            event_data[i]=rs.getInt("event_data"+String.valueOf(i+1));
                        }
                        s.setTiming_data(timing_data);
                        s.setEvent_data(event_data);
                        list.add(s);
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return list;
            }
        });
        return list;
    }
    //文件导出时的历史查询
    public List serchCSV(Object obj) {
        final Switch_board sb=(Switch_board) obj;
        String tablists=sb.getNote()+",record_time";
        String table=DAOHelper.sdf_withOut.format(sb.getRecord_time());
        String table1=DAOHelper.sdf_withOut.format(sb.getRecord_time1());
        String SqlAll="";
        String sql=" (select "+tablists+" from db_partinsystem_history.switch_board_"+sb.getDev_id()+"_"+table+" "
                + "  where record_time >= ? and record_time <= ?  order by record_time asc )";
        String sql_union=" union all ";
        String sql1= " (select "+tablists+" from db_partinsystem_history.switch_board_"+sb.getDev_id()+"_"+table1+" "
                + "  where record_time >= ? and record_time <= ?  order by record_time asc )";
        Object[] strarr=null;
        List list=new ArrayList();
        String st=sb.getDev_id()+"_"+table;
        String st1=sb.getDev_id()+"_"+table1;
        int size=DAOHelper.serchTable(st);
        int size1=DAOHelper.serchTable(st1);
        //表都存在
        if(size>0&&size1>0){
            if(table.equals(table1)){
                SqlAll=sql;
                strarr=new Object[]{DAOHelper.sdf.format(sb.getRecord_time()),DAOHelper.sdf.format(sb.getRecord_time1())};
            }else{
                SqlAll=sql+sql_union+sql1;
                strarr=new Object[]{DAOHelper.sdf.format(sb.getRecord_time()),DAOHelper.sdfwithOut.format(sb.getRecord_time())+" 23:59:59",DAOHelper.sdfwithOut.format(sb.getRecord_time())+" 00:00:00",DAOHelper.sdf.format(sb.getRecord_time1())};
            }
        }
        //存在一个表
        if(size>0&&size1<=0){
            SqlAll=sql;
            strarr=new Object[]{DAOHelper.sdf.format(sb.getRecord_time()),DAOHelper.sdfwithOut.format(sb.getRecord_time())+" 23:59:59"};
        }
        if(size<=0&&size1>0){
            SqlAll=sql1;
            strarr=new Object[]{DAOHelper.sdfwithOut.format(sb.getRecord_time1())+" 00:00:00",DAOHelper.sdf.format(sb.getRecord_time1())};
        }
        //表都不存在
        if(size<=0&&size1<=0){
            return  list;
        }
        list=DAOHelper.executeQuery(SqlAll, DBUtil.getConn(), strarr, new CallBack() {
            @Override
            public List getResults(ResultSet rs) {
                List list=new ArrayList();
                String[] state=sb.getNote().split(",");
                try {
                    while(rs.next()){
                        List row=new ArrayList();
                        row.add(ActionUtil.chageDateToString(rs.getTimestamp("record_time"), ActionUtil.time_yyyyMMddHHmmss).trim());
                        for (int i = 0; i < state.length; i++) {
                            row.add(rs.getFloat(state[i]));
                        }
                        list.add(row);
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return list;
            }
        });
        return list;
    }
}
DyEnvir_system/src/com/fgkj/partinsystem/service/Switch_boardService.java
New file
@@ -0,0 +1,60 @@
package com.fgkj.partinsystem.service;
import java.util.List;
import com.fgkj.dao.BaseDAO;
import com.fgkj.dao.BaseDAOFactory;
import com.fgkj.partinsystem.impl.Battery_monitorImpl;
import com.fgkj.partinsystem.impl.Switch_boardImpl;
import com.fgkj.services.ServiceModel;
public class Switch_boardService {
    private BaseDAO dao;
    private ServiceModel model;
    public Switch_boardService() {
        super();
        this.dao=BaseDAOFactory.getBaseDAO(BaseDAO.SWITCH_BOARD);
        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;
    }
    //设备实时数据显示(前100笔数据服务器的时间)
    public ServiceModel serchByInfo(Object obj) {
        List list=dao.serchByInfo(obj);
        if(list!=null&&list.size()>0){
            model.setCode(1);
            model.setData(list);
            model.setMsg("查询成功!");
        }else{
            model.setCode(0);
            model.setMsg("查询失败!");
        }
        return model;
    }
    //设备历史数据查询
    public ServiceModel serchHistory(Object obj) {
        List list=((Switch_boardImpl)dao).serchHistory(obj);
        if(list!=null&&list.size()>0){
            model.setCode(1);
            model.setData(list);
            model.setMsg("查询成功!");
        }else{
            model.setCode(0);
            model.setMsg("查询失败!");
        }
        return model;
    }
}