package com.fgkj.dao.impl;
|
|
import java.sql.ResultSet;
|
import java.sql.SQLException;
|
import java.text.ParseException;
|
import java.text.SimpleDateFormat;
|
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.db.IDatabaseName;
|
import com.fgkj.dto.BattInf;
|
import com.fgkj.dto.Batt_Maint_Dealarm;
|
import com.fgkj.dto.Batt_maintenance_inf;
|
import com.fgkj.dto.Battresdata;
|
import com.fgkj.dto.Battresdata_inf;
|
import com.fgkj.dto.Batttestdata_inf;
|
import com.fgkj.dto.Batttestdatastop;
|
import com.fgkj.dto.Page;
|
|
public class BattinfThirdImpl implements BaseDAO, CallBack {
|
|
public List getResults(ResultSet rs) {
|
List list = new ArrayList();
|
try {
|
while (rs.next()) {
|
BattInf binf = new BattInf();
|
binf.setBattGroupId(rs.getInt("BattGroupId"));
|
binf.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
binf.setMonResStd(rs.getFloat("monResStd"));
|
binf.setMonSerStd(rs.getFloat("monserstd"));
|
|
Batttestdata_inf tdata = new Batttestdata_inf();
|
tdata.setBattGroupId(rs.getInt("battGroupId"));
|
tdata.setMax_monvol(rs.getFloat("max_monvol"));
|
tdata.setMin_monvol(rs.getFloat("min_monvol"));
|
tdata.setTest_type(rs.getInt("test_type"));
|
tdata.setTest_record_count(rs.getInt("test_record_count"));
|
|
Batttestdatastop sdata=new Batttestdatastop();
|
sdata.setTest_starttime(rs.getTimestamp("test_starttime"));
|
sdata.setRecord_time(rs.getTimestamp("record_time"));
|
sdata.setTest_timelong(rs.getInt("test_timelong"));
|
sdata.setGroup_vol(rs.getFloat("group_vol"));
|
sdata.setTest_curr(rs.getFloat("test_curr"));
|
sdata.setTest_cap(rs.getFloat("test_cap"));
|
sdata.setMon_num(rs.getInt("mon_num"));
|
sdata.setMon_vol(rs.getFloat("mon_vol"));
|
Batt_Maint_Dealarm bmd = new Batt_Maint_Dealarm();
|
bmd.setBinf(binf);
|
bmd.setTdata(tdata);
|
bmd.setSdata(sdata);
|
list.add(bmd);
|
}
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
return list;
|
}
|
|
public boolean add(Object obj) {
|
return false;
|
}
|
|
public boolean update(Object obj) {
|
return false;
|
}
|
|
public boolean del(Object obj) {
|
return false;
|
}
|
|
public List searchAll() {
|
return null;
|
}
|
|
|
|
public List serchByInfo(Object obj) {
|
return null;
|
}
|
//1.3电池单体统计分析查询(旧)
|
public List serchByCondition1(Object obj){
|
Batt_Maint_Dealarm bmd = (Batt_Maint_Dealarm) obj;
|
Batttestdata_inf tdata=bmd.getTdata();
|
List list = null;
|
String sql="";
|
BattInf binf = bmd.getBinf();
|
String sqlT="select distinct(db_battinf.tb_battinf.BattgroupId),moncapstd,monvolstd,monresstd,monserstd" +
|
",db_batt_testdata.tb_batttestdata_inf.battgroupid,max_monvol,min_monvol,db_batt_testdata.tb_batttestdata_inf.test_record_count,test_type,test_record_count " +
|
"from db_battinf.tb_battinf,db_batt_testdata.tb_batttestdata_inf " +
|
"where " +
|
"db_battinf.tb_battinf.BattgroupId=db_batt_testdata.tb_batttestdata_inf.BattGroupId " +
|
"and db_battinf.tb_battinf.battgroupid=? and db_batt_testdata.tb_batttestdata_inf.data_available=1 " +
|
"and db_batt_testdata.tb_batttestdata_inf.test_type=? and db_batt_testdata.tb_batttestdata_inf.test_starttype=3 ";
|
String sqlE="select distinct(db_battinf.tb_battinf.BattgroupId),moncapstd,monvolstd,monresstd,monserstd" +
|
",db_batt_testdata.tb_battresdata_inf.battgroupid,db_batt_testdata.tb_battresdata_inf.test_record_count,test_type,test_record_count " +
|
"from db_battinf.tb_battinf,db_batt_testdata.tb_battresdata_inf " +
|
"where " +
|
"db_battinf.tb_battinf.BattgroupId=db_batt_testdata.tb_battresdata_inf.BattGroupId " +
|
"and db_battinf.tb_battinf.battgroupid=? and db_batt_testdata.tb_battresdata_inf.data_available=1 and db_batt_testdata.tb_battresdata_inf.test_type=? ";
|
//用于维护区
|
String station1SqlT=" and stationname1!=? ";//全部
|
String station1SqlF=" and stationname1=? ";
|
if(binf.getStationName1().equals("")){
|
sqlT+=station1SqlT;
|
sqlE+=station1SqlT;
|
}else{
|
sqlT+=station1SqlF;
|
sqlE+=station1SqlF;
|
}
|
//用于机房站点
|
String stationSqlT=" and stationname!=? ";//全部
|
String stationSqlF=" and stationname=? ";
|
if(binf.getStationName().equals("")){
|
sqlT+=stationSqlT;
|
sqlE+=stationSqlT;
|
}else{
|
sqlT+=stationSqlF;
|
sqlE+=stationSqlF;
|
}
|
|
//按照battgroupid排序
|
String endSql=" order by db_battinf.tb_battinf.battgroupid ";
|
sqlT+=endSql;
|
sqlE+=endSql;
|
if(tdata.getTest_type()==3){
|
sql=sqlT;
|
//System.out.println(sql);
|
list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getBattGroupId(),tdata.getTest_type(),binf.getStationName1(),binf.getStationName()},new BattinfThirdImpl());
|
}else if(tdata.getTest_type()==5){
|
sql=sqlE;
|
//System.out.println(sql);
|
list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getBattGroupId(),tdata.getTest_type(),binf.getStationName1(),binf.getStationName()},new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
|
try {
|
while(rs.next()){
|
BattInf binf=new BattInf();
|
binf.setBattGroupId(rs.getInt("BattGroupId"));
|
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
binf.setMonResStd(rs.getFloat("monResStd"));
|
binf.setMonSerStd(rs.getFloat("monSerStd"));
|
Battresdata_inf rinf=new Battresdata_inf();
|
rinf.setBattGroupId(rs.getInt("battGroupId"));
|
rinf.setTest_record_count(rs.getInt("test_record_count"));
|
rinf.setTest_type(rs.getInt("test_type"));
|
rinf.setTest_record_count(rs.getInt("test_record_count"));
|
Batt_Maint_Dealarm bmd=new Batt_Maint_Dealarm();
|
bmd.setBinf(binf);
|
bmd.setRinf(rinf);
|
|
list.add(bmd);
|
}
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
}
|
|
return list;
|
}
|
//1.3电池单体统计分析查询
|
public List serchByCondition(Object obj){
|
Batt_Maint_Dealarm bmd = (Batt_Maint_Dealarm) obj;
|
Batttestdata_inf tdata=bmd.getTdata();
|
List list = null;
|
String sql="";
|
BattInf binf = bmd.getBinf();
|
String sqlT="select distinct(db_battinf.tb_battinf.BattgroupId),moncount,moncapstd,monvolstd,monresstd,monserstd" +
|
",db_batt_testdata.tb_batttestdata_inf.battgroupid,max_monvol,min_monvol,db_batt_testdata.tb_batttestdata_inf.test_record_count,db_batt_testdata.tb_batttestdata_inf.test_type,db_batt_testdata.tb_batttestdata_inf.test_record_count" +
|
",db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".test_starttime,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".record_time,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".test_timelong,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".group_vol,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".test_curr,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".test_cap,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".mon_num,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".mon_vol " +
|
" from db_battinf.tb_battinf,db_batt_testdata.tb_batttestdata_inf,db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+" "+
|
" where " +
|
" db_battinf.tb_battinf.BattgroupId=db_batt_testdata.tb_batttestdata_inf.BattGroupId " +
|
" and db_batt_testdata.tb_batttestdata_inf.BattGroupId=db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".battgroupid" +
|
" and db_batt_testdata.tb_batttestdata_inf.test_record_count=db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".test_record_count" +
|
" and db_batt_testdata.tb_batttestdata_inf.record_num=db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".record_num" +
|
" and db_battinf.tb_battinf.battgroupid=? and db_batt_testdata.tb_batttestdata_inf.data_available=1 " +
|
" and db_batt_testdata.tb_batttestdata_inf.test_type=? and db_batt_testdata.tb_batttestdata_inf.test_starttype=3 ";
|
String sqlE="select distinct(db_battinf.tb_battinf.BattgroupId),moncount,moncapstd,monvolstd,monresstd,monserstd" +
|
" ,db_batt_testdata.tb_battresdata_inf.battgroupid,db_batt_testdata.tb_battresdata_inf.test_record_count " +
|
" ,db_batt_testdata.tb_battresdata_" +binf.getBattGroupId()+".group_vol,db_batt_testdata.tb_battresdata_" +binf.getBattGroupId()+".test_curr,db_batt_testdata.tb_battresdata_" +binf.getBattGroupId()+".test_starttime,mon_num,mon_vol,mon_tmp,mon_res,mon_ser,conn_res " +
|
" from db_battinf.tb_battinf,db_batt_testdata.tb_battresdata_inf,db_batt_testdata.tb_battresdata_"+binf.getBattGroupId()+" "+
|
" where " +
|
" db_battinf.tb_battinf.BattgroupId=db_batt_testdata.tb_battresdata_inf.BattGroupId" +
|
" and db_batt_testdata.tb_battresdata_inf.BattGroupId=db_batt_testdata.tb_battresdata_"+binf.getBattGroupId()+".battgroupid" +
|
" and db_batt_testdata.tb_battresdata_inf.test_record_count=db_batt_testdata.tb_battresdata_"+binf.getBattGroupId()+".test_record_count" +
|
" and db_battinf.tb_battinf.battgroupid=? and db_batt_testdata.tb_battresdata_inf.data_available=1 and db_batt_testdata.tb_battresdata_inf.test_type=? ";
|
//用于单体选择
|
String tmonNumSqlT=" and db_batt_testdata.tb_batttestdatastop_" +binf.getBattGroupId()+".mon_num!=? ";
|
String tmonNumSqlF=" and db_batt_testdata.tb_batttestdatastop_" +binf.getBattGroupId()+".mon_num=? ";
|
|
String emonNumSqlT=" and db_batt_testdata.tb_battresdata_" +binf.getBattGroupId()+".mon_num!=? ";
|
String emonNumSqlF=" and db_batt_testdata.tb_battresdata_" +binf.getBattGroupId()+".mon_num=? ";
|
if(binf.getMonNum()==0){
|
sqlT+=tmonNumSqlT;
|
sqlE+=emonNumSqlT;
|
}else{
|
sqlT+=tmonNumSqlF;
|
sqlE+=emonNumSqlF;
|
}
|
//用于维护区
|
String station1SqlT=" and stationname1!=? ";//全部
|
String station1SqlF=" and stationname1=? ";
|
if(binf.getStationName1().equals("")){
|
sqlT+=station1SqlT;
|
sqlE+=station1SqlT;
|
}else{
|
sqlT+=station1SqlF;
|
sqlE+=station1SqlF;
|
}
|
//按照battgroupid排序
|
String tendSql=" order by db_batt_testdata.tb_batttestdatastop_"+binf.getBattGroupId()+".test_record_count asc,db_batt_testdata.tb_batttestdatastop_" +binf.getBattGroupId()+".mon_num asc ";
|
String eendSql=" order by db_batt_testdata.tb_battresdata_"+binf.getBattGroupId()+".test_record_count asc,db_batt_testdata.tb_battresdata_" +binf.getBattGroupId()+".mon_num asc ";
|
//用于机房站点
|
String stationSqlT=" and stationname!=? ";//全部
|
String stationSqlF=" and stationname=? ";
|
if(binf.getStationName().equals("")){
|
sqlT+=stationSqlT+tendSql;
|
sqlE+=stationSqlT+eendSql;
|
}else{
|
sqlT+=stationSqlF+tendSql;
|
sqlE+=stationSqlF+eendSql;
|
}
|
if(tdata.getTest_type()==3){
|
sql=sqlT;
|
//System.out.println(sql);
|
list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getBattGroupId(),tdata.getTest_type(),binf.getMonNum(),binf.getStationName1(),binf.getStationName()},new BattinfThirdImpl());
|
}else if(tdata.getTest_type()==5){
|
sql=sqlE;
|
//System.out.println(sql);
|
list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getBattGroupId(),tdata.getTest_type(),binf.getMonNum()*10+1,binf.getStationName1(),binf.getStationName()},new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
|
try {
|
while(rs.next()){
|
BattInf binf=new BattInf();
|
binf.setBattGroupId(rs.getInt("BattGroupId"));
|
binf.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
binf.setMonResStd(rs.getFloat("monResStd"));
|
binf.setMonSerStd(rs.getFloat("monSerStd"));
|
|
Battresdata_inf rinf=new Battresdata_inf();
|
rinf.setBattGroupId(rs.getInt("battGroupId"));
|
rinf.setTest_record_count(rs.getInt("test_record_count"));
|
|
Battresdata rdata = new Battresdata();
|
rdata.setBattGroupId(rs.getInt("BattGroupId"));
|
rdata.setTest_record_count(rs.getInt("test_record_count"));
|
rdata.setTest_starttime(rs.getTimestamp("test_starttime"));
|
rdata.setGroup_vol(rs.getFloat("group_vol"));
|
rdata.setTest_curr(rs.getFloat("test_curr"));
|
rdata.setMon_num(rs.getInt("mon_num"));
|
rdata.setMon_vol(rs.getFloat("mon_vol"));
|
rdata.setMon_tmp(rs.getFloat("mon_tmp"));
|
rdata.setMon_res(rs.getFloat("mon_res"));
|
rdata.setMon_ser(rs.getFloat("mon_ser"));
|
rdata.setConn_res(rs.getFloat("conn_res"));
|
|
|
Batt_Maint_Dealarm bmd=new Batt_Maint_Dealarm();
|
bmd.setBinf(binf);
|
bmd.setRinf(rinf);
|
bmd.setRdata(rdata);
|
list.add(bmd);
|
}
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
}
|
|
return list;
|
}
|
public static void main(String[] args) {
|
BattInfImpl biml = new BattInfImpl();
|
BattInf binf = new BattInf();
|
|
binf.setStationName("");
|
binf.setStationName1("");
|
binf.setBattGroupId(1000007);
|
//binf.setBattGroupName1("");
|
|
|
Batttestdata_inf tdata=new Batttestdata_inf();
|
tdata.setTest_type(3);
|
|
Batt_Maint_Dealarm bmd = new Batt_Maint_Dealarm();
|
bmd.setBinf(binf);
|
bmd.setTdata(tdata);
|
|
|
BattinfThirdImpl bi=new BattinfThirdImpl();
|
List<Batt_Maint_Dealarm> list = bi.serchByCondition(bmd);
|
for (Batt_Maint_Dealarm b : list) {
|
System.out.println(b.getTdata());
|
}
|
System.out.println(list.size());
|
|
|
|
}
|
|
}
|