package com.fgkj.dao.impl;
|
|
import java.sql.Connection;
|
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.AlarmDaoFactory;
|
import com.fgkj.dao.BaseDAO;
|
import com.fgkj.dao.CallBack;
|
import com.fgkj.dao.DAOHelper;
|
import com.fgkj.dao.LimitNumberFactory;
|
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_devalarm_data;
|
import com.fgkj.dto.Page;
|
import com.fgkj.dto.User_inf;
|
import com.sun.org.apache.bcel.internal.generic.GETSTATIC;
|
|
public class Batt_devalarm_dataImpl implements BaseDAO,CallBack{
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(rs.getInt("num"));
|
ddata.setRecord_id(rs.getInt("record_id"));
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_level(rs.getInt("alm_level"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
ddata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
ddata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
ddata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
ddata.setAlm_cleared_type(rs.getInt("alm_cleared_type"));
|
ddata.setUsr_id(rs.getInt("usr_id"));
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
|
public boolean add(Object obj) {
|
// TODO Auto-generated method stub
|
return false;
|
}
|
|
//3.4设备实时告警(确认和取消告警)
|
public boolean update(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
String sql=" UPDATE db_alarm.tb_devalarm_data SET alm_is_confirmed=? WHERE num=? ";
|
boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ddata.getAlm_is_confirmed(),ddata.getNum()});
|
return bl;
|
}
|
//3.4设备实时告警/历史告警(删除告警)
|
public boolean del(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
String sql=" DELETE FROM db_alarm.db_alarm.tb_devalarm_data WHERE num=? ";
|
boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ddata.getNum()});
|
return bl;
|
}
|
|
//3.4设备实时告警(确认告警)<多数据修改>
|
public String updatePro(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
String sql=" UPDATE db_alarm.tb_devalarm_data SET alm_is_confirmed="+ddata.getAlm_is_confirmed()+",alm_confirmed_time='"+DAOHelper.sdf.format(ddata.getAlm_confirmed_time())+"' WHERE num="+ddata.getNum();
|
return sql;
|
}
|
//3.4设备实时告警(取消告警)<多数据修改>
|
public String cancelPro(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
String sql=" UPDATE db_alarm.tb_devalarm_data SET record_id="+ddata.getRecord_id()+",alm_end_time='"+DAOHelper.sdf.format(ddata.getAlm_end_time())+"',alm_cleared_type="+ddata.getAlm_cleared_type()+" WHERE num="+ddata.getNum();
|
return sql;
|
}
|
|
//3.4设备实时告警/历史告警(删除告警)<多数据删除>
|
public String delPro(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
String sql=" DELETE FROM db_alarm.tb_devalarm_data WHERE num="+ddata.getNum();
|
return sql;
|
}
|
|
public List searchAll() {
|
// TODO Auto-generated method stub
|
return null;
|
}
|
//3.4设备告警历史记录查询
|
/*时间段放在binf的getBattProductDate中*/
|
/*public List serchByCondition(Object obj) {
|
Batt_Maint_Dealarm bmd=(Batt_Maint_Dealarm) obj;
|
BattInf binf=bmd.getBinf();
|
Page page=bmd.getPage();
|
Connection conn=DBUtil.getConn();
|
String numberSql=" SELECT FOUND_ROWS() number";
|
String sql="";
|
String baseSql=" SELECT SQL_CALC_FOUND_ROWS tb_devalarm_data.num,record_id,dev_id,dev_ip,alm_type,alm_level,alm_start_time,alm_end_time," +
|
" alm_is_confirmed,alm_confirmed_time,alm_cleared_type, " +
|
" DISTINCTbinf.stationName,DISTINCTbinf.FbsDeviceName " +
|
" FROM db_alarm.tb_devalarm_data,(SELECT DISTINCT db_battinf.tb_battinf.FbsDeviceId,db_battinf.tb_battinf.stationName,db_battinf.tb_battinf.FbsDeviceName from db_battinf.tb_battinf where db_battinf.tb_battinf.StationName LIKE ? AND db_battinf.tb_battinf.StationName1 LIKE ? ) as DISTINCTbinf " +
|
" WHERE tb_devalarm_data.dev_id=DISTINCTbinf.FbsDeviceId " +
|
" AND alm_start_time>=? and alm_start_time<=? ";
|
|
//历史告警
|
String alarmTypeSql=" AND alm_cleared_type!=0";
|
baseSql+=alarmTypeSql;
|
//排序
|
String endSql=" ORDER BY alm_start_time DESC ";
|
//分页
|
String limitSql=" LIMIT ?,? ";
|
|
sql=baseSql+endSql+limitSql;
|
|
List<Batt_devalarm_data> list=DAOHelper.executeQueryLimit(sql, conn,new Object[]{"%"+binf.getStationName()+"%","%"+binf.getStationName1()+"%",binf.getBattProductDate(),binf.getBattProductDate1()
|
,(page.getPageCurr() - 1)*page.getPageSize()
|
,page.getPageSize()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(rs.getInt("num"));
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_level(rs.getInt("alm_level"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
ddata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
ddata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
ddata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
ddata.setAlm_cleared_type(rs.getInt("alm_cleared_type"));
|
|
ddata.setDev_name(rs.getString("FbsDeviceName"));
|
ddata.setStationName(rs.getString("stationName"));
|
|
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
//System.out.println("number: "+number);
|
if(list!=null&&list.size()>0){
|
list.get(list.size()-1).setUsr_id(number);
|
}
|
return list;
|
}*/
|
public List serchByCondition(Object obj) {
|
Batt_Maint_Dealarm bmd=(Batt_Maint_Dealarm) obj;
|
User_inf uinf=bmd.getUinf();
|
BattInf binf=bmd.getBinf();
|
Page page=bmd.getPage();
|
Connection conn=DBUtil.getConn();
|
String numberSql=" SELECT FOUND_ROWS() number";
|
String sql="";
|
String baseSql=" SELECT SQL_CALC_FOUND_ROWS tb_devalarm_data.num,record_id,dev_id,dev_ip,alm_type,alm_level,alm_start_time,alm_end_time," +
|
" alm_is_confirmed,alm_confirmed_time,alm_cleared_type,alm_value, " +
|
" DISTINCTbinf.stationName,DISTINCTbinf.FbsDeviceName " +
|
" FROM db_alarm.tb_devalarm_data,(SELECT DISTINCT db_battinf.tb_battinf.FbsDeviceId,db_battinf.tb_battinf.stationName,db_battinf.tb_battinf.FbsDeviceName from db_battinf.tb_battinf where db_battinf.tb_battinf.StationName LIKE ? AND db_battinf.tb_battinf.StationName1 LIKE ? ) as DISTINCTbinf " +
|
" WHERE tb_devalarm_data.dev_id=DISTINCTbinf.FbsDeviceId " +
|
" AND alm_start_time>=? and alm_start_time<=? ";
|
|
//历史告警
|
String alarmTypeSql=" AND alm_cleared_type!=0";
|
baseSql+=alarmTypeSql;
|
//判断是否为管理的机房
|
String stationSql=" and db_alarm.tb_devalarm_data.dev_id in(select distinct db_battinf.tb_battinf.FbsDeviceId " +
|
" from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf " +
|
" where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " +
|
" and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
|
" and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
|
" and db_user.tb_user_inf.uid=? )";
|
baseSql+=stationSql;
|
|
//排序
|
String endSql=" ORDER BY alm_start_time DESC ";
|
//分页
|
String limitSql=" LIMIT ?,? ";
|
|
sql=baseSql+endSql+limitSql;
|
|
List<Batt_devalarm_data> list=DAOHelper.executeQueryLimit(sql, conn,new Object[]{"%"+binf.getStationName()+"%","%"+binf.getStationName1()+"%",binf.getBattProductDate(),binf.getBattProductDate1()
|
,uinf.getUId(),(page.getPageCurr() - 1)*page.getPageSize()
|
,page.getPageSize()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(rs.getInt("num"));
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_level(rs.getInt("alm_level"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
ddata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
ddata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
ddata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
ddata.setAlm_cleared_type(rs.getInt("alm_cleared_type"));
|
ddata.setAlm_value(rs.getFloat("alm_value"));
|
|
ddata.setDev_name(rs.getString("FbsDeviceName"));
|
ddata.setStationName(rs.getString("stationName"));
|
|
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
//System.out.println("number: "+number);
|
if(list!=null&&list.size()>0){
|
list.get(list.size()-1).setUsr_id(number);
|
}
|
return list;
|
}
|
//3.3设备告警实时查询+筛选
|
/*public List serchByInfo(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
Page page=ddata.getPage();
|
Connection conn=DBUtil.getConn();
|
String numberSql=" SELECT FOUND_ROWS() number ";
|
String sql="";
|
String baseSql=" SELECT SQL_CALC_FOUND_ROWS tb_devalarm_data.num,dev_id,dev_ip,alm_type,alm_level,alm_start_time,alm_end_time," +
|
" alm_is_confirmed,alm_confirmed_time,alm_cleared_type," +
|
" DISTINCTbinf.stationName,DISTINCTbinf.FbsDeviceName " +
|
" FROM db_alarm.tb_devalarm_data,(SELECT DISTINCT db_battinf.tb_battinf.FbsDeviceId,db_battinf.tb_battinf.stationName,db_battinf.tb_battinf.FbsDeviceName from db_battinf.tb_battinf) as DISTINCTbinf " +
|
" WHERE " +
|
" tb_devalarm_data.dev_id=DISTINCTbinf.FbsDeviceId " ;
|
//设备实时告警
|
String alarmTypeSql=" AND alm_cleared_type=0 ";
|
baseSql+=alarmTypeSql;
|
//排序
|
String endSql=" ORDER BY alm_start_time DESC ";
|
//分页
|
String limitSql=" LIMIT ?,? ";
|
sql=baseSql+endSql+limitSql;
|
List<Batt_devalarm_data> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(rs.getInt("num"));
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_level(rs.getInt("alm_level"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
ddata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
ddata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
ddata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
ddata.setAlm_cleared_type(rs.getInt("alm_cleared_type"));
|
|
ddata.setDev_name(rs.getString("FbsDeviceName"));
|
ddata.setStationName(rs.getString("stationName"));
|
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
//System.out.println("number: "+number);
|
if(list!=null&&list.size()>0){
|
list.get(list.size()-1).setUsr_id(number);
|
}
|
return list;
|
}*/
|
public List serchByInfo(Object obj) {
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
User_inf uinf=ddata.getUinf();
|
Page page=ddata.getPage();
|
Connection conn=DBUtil.getConn();
|
String numberSql=" SELECT FOUND_ROWS() number ";
|
String sql="";
|
String baseSql=" SELECT SQL_CALC_FOUND_ROWS distinct tb_devalarm_data.num,dev_id,dev_ip,alm_type,alm_level,alm_start_time,alm_end_time," +
|
" alm_is_confirmed,alm_confirmed_time,alm_cleared_type,alm_value, " +
|
" db_battinf.tb_battinf.stationName,db_battinf.tb_battinf.stationName1,db_battinf.tb_battinf.stationName2,db_battinf.tb_battinf.stationName5,db_battinf.tb_battinf.FbsDeviceName " +
|
" FROM db_alarm.tb_devalarm_data,db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf " +
|
" WHERE " +
|
" tb_devalarm_data.dev_id=db_battinf.tb_battinf.FbsDeviceId and tb_battinf.station_install=1 "
|
+ "and db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId "
|
+ "and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id "
|
+ "and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid and db_user.tb_user_inf.uid=? " ;
|
//设备实时告警
|
String alarmTypeSql=" AND alm_cleared_type=0 ";
|
baseSql+=alarmTypeSql;
|
//用于维护区
|
String station1SqlT=" and stationname1!=? ";//全部
|
String station1SqlF=" and stationname1=? ";
|
if(ddata.getStationName1().equals("")){
|
baseSql+=station1SqlT;
|
}else{
|
baseSql+=station1SqlF;
|
}
|
//用于机房站点
|
String stationSqlT=" and stationname!=? ";//全部
|
String stationSqlF=" and stationname=? ";
|
if(ddata.getStationName().equals("")){
|
baseSql+=stationSqlT;
|
}else{
|
baseSql+=stationSqlF;
|
}
|
//用于机房站点
|
String stationSql2T=" and stationname2!=? ";//全部
|
String stationSql2F=" and stationname2=? ";
|
if(ddata.getStationName2().equals("")){
|
baseSql+=stationSql2T;
|
}else{
|
baseSql+=stationSql2F;
|
}
|
//用于区县
|
String stationSql5T=" and stationname5!=? ";//全部
|
String stationSql5F=" and stationname5=? ";
|
if(ddata.getStationName5().equals("")){
|
baseSql+=stationSql5T;
|
}else{
|
baseSql+=stationSql5F;
|
}
|
//用于故障事件
|
String almTypeT=" and alm_type!=? ";//全部
|
String almTypeF=" and alm_type=? ";
|
if(ddata.getAlm_type()==0){
|
baseSql+=almTypeT;
|
}else{
|
baseSql+=almTypeF;
|
}
|
/*//判断是否为管理的机房
|
String stationSql=" and db_alarm.tb_devalarm_data.dev_id in(select distinct db_battinf.tb_battinf.FbsDeviceId " +
|
" from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf " +
|
" where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " +
|
" and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
|
" and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
|
" and db_user.tb_user_inf.uid=?) ";
|
baseSql+=stationSql;*/
|
//排序
|
String endSql=" ORDER BY alm_start_time DESC,db_alarm.tb_devalarm_data.dev_id asc ";
|
//分页
|
String limitSql=" LIMIT ?,? ";
|
sql=baseSql+endSql+limitSql;
|
//System.out.println(sql);
|
List<Batt_devalarm_data> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{uinf.getUId(),ddata.getStationName1(),ddata.getStationName(),ddata.getStationName2(),ddata.getStationName5(),ddata.getAlm_type(),(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(rs.getInt("num"));
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_level(rs.getInt("alm_level"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
ddata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
ddata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
ddata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
ddata.setAlm_cleared_type(rs.getInt("alm_cleared_type"));
|
ddata.setAlm_value(rs.getFloat("alm_value"));
|
|
ddata.setDev_name(rs.getString("FbsDeviceName"));
|
ddata.setStationName(rs.getString("stationName"));
|
ddata.setStationName1(rs.getString("stationName1"));
|
ddata.setStationName2(rs.getString("stationName2"));
|
ddata.setStationName5(rs.getString("stationName5"));
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
//System.out.println("number: "+number);
|
if(list!=null&&list.size()>0){
|
list.get(list.size()-1).setUsr_id(number);
|
}
|
return list;
|
}
|
//查询设备告警总数
|
/*public int searchNums() {
|
String sql="select count(num) as nums " +
|
"from db_alarm.tb_devalarm_data " +
|
"where alm_cleared_type=0 " +
|
"and tb_devalarm_data.dev_id in (select FbsDeviceId from db_battinf.tb_battinf ) " +
|
"limit 1 ";
|
//System.out.println(sql);
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
int nums=rs.getInt("nums");
|
list.add(nums);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
int nums=0;//最后的结果
|
if(list!=null&&list.size()>0){
|
nums=(Integer) list.get(list.size()-1);
|
}
|
return nums;
|
}*/
|
public int searchNums(Object obj) {
|
User_inf uinf=(User_inf) obj;
|
String sql="select distinct num,dev_id,alm_start_time " +
|
"from db_alarm.tb_devalarm_data " +
|
"where alm_cleared_type=0 " +
|
"and tb_devalarm_data.dev_id in (select distinct db_battinf.tb_battinf.FbsDeviceId " +
|
" from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf " +
|
" where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " +
|
" and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
|
" and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
|
" and db_user.tb_user_inf.uid=? and tb_battinf.station_install=1 ) ";
|
//System.out.println(sql);
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(rs.getInt("num"));
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
int nums=0;//最后的结果
|
if(list!=null&&list.size()>0){
|
nums=(Integer) list.size();
|
}
|
return nums;
|
}
|
|
//项目下方的滚动,查询最新设备告警(旧版本)
|
public List serchTopAlmInDev(){
|
String sql="select db_alarm.tb_devalarm_data.dev_id,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.fbsdevicename,dev_ip,alm_type,alm_start_time " +
|
" from db_alarm.tb_devalarm_data,db_battinf.tb_battinf" +
|
" where alm_cleared_type=0 " +
|
" and db_alarm.tb_devalarm_data.dev_id=db_battinf.tb_battinf.fbsdeviceid " +
|
" order by alm_start_time desc " +
|
" limit 1";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setDev_name(rs.getString("fbsdevicename"));
|
ddata.setStationName(rs.getString("stationName"));
|
ddata.setStationId(rs.getString("stationId"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
|
//项目下方的滚动,查询最新设备告警
|
/* public List serchTopDevTen(){
|
String sql="select distinct db_alarm.tb_devalarm_data.dev_id,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.fbsdevicename,dev_ip,alm_type,alm_start_time " +
|
" from db_alarm.tb_devalarm_data,db_battinf.tb_battinf" +
|
" where alm_cleared_type=0 " +
|
" and db_alarm.tb_devalarm_data.dev_id=db_battinf.tb_battinf.fbsdeviceid " +
|
" order by alm_start_time desc " +
|
" limit 0,5";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(1);//1表示设备告警
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setDev_name(rs.getString("fbsdevicename"));
|
ddata.setStationName(rs.getString("stationName"));
|
ddata.setStationId(rs.getString("stationId"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
String ddataStr=""+ddata.getStationName() // 机房名称
|
+"在"+ActionUtil.chageDateToString(ddata.getAlm_start_time(), ActionUtil.time_yyyyMMddHHmmss) // 告警开始时间
|
+"出现了"+AlarmDaoFactory.getdevName(ddata.getAlm_type()) // 告警类型名称
|
+"告警!";
|
ddata.setNote(ddataStr);
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}*/
|
public List serchTopDevTen(Object obj){
|
User_inf uinf=(User_inf) obj;
|
String sql="select distinct db_alarm.tb_devalarm_data.dev_id,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.fbsdevicename,dev_ip,alm_type,alm_start_time " +
|
" from db_alarm.tb_devalarm_data,db_battinf.tb_battinf" +
|
" where alm_cleared_type=0 " +
|
" and db_alarm.tb_devalarm_data.dev_id=db_battinf.tb_battinf.fbsdeviceid and tb_battinf.station_install=1 " +
|
" and db_alarm.tb_devalarm_data.dev_id in (select distinct db_battinf.tb_battinf.FbsDeviceId " +
|
" from db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr,db_user.tb_user_inf " +
|
" where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " +
|
" and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
|
" and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
|
" and db_user.tb_user_inf.uid=?)" +
|
" order by alm_start_time desc " +
|
" limit 0,5";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(1);//1表示设备告警
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setDev_name(rs.getString("fbsdevicename"));
|
ddata.setStationName(rs.getString("stationName"));
|
ddata.setStationId(rs.getString("stationId"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
String ddataStr=""+ddata.getStationName() // 机房名称
|
+"在"+ActionUtil.chageDateToString(ddata.getAlm_start_time(), ActionUtil.time_yyyyMMddHHmmss) // 告警开始时间
|
+"出现了"+AlarmDaoFactory.getdevName(ddata.getAlm_type()); // 告警类型名称
|
|
ddata.setNote(ddataStr);
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
//告警发声(30秒之内的告警)
|
public List serchIn30(Object obj){
|
User_inf uinf=(User_inf) obj;
|
String sql="select distinct db_alarm.tb_devalarm_data.dev_id,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.fbsdevicename,dev_ip,alm_type,alm_start_time " +
|
" from db_alarm.tb_devalarm_data,db_battinf.tb_battinf" +
|
" where alm_cleared_type=0 " +
|
" and db_alarm.tb_devalarm_data.dev_id=db_battinf.tb_battinf.fbsdeviceid and tb_battinf.station_install=1 " +
|
" and (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(alm_start_time))<"+AlarmDaoFactory.alarm_voice_timelong ;
|
//用户管理
|
String userSql=" and tb_battinf.StationId in(" +
|
" select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id and db_user.tb_user_battgroup_baojigroup_usr.uId=?" +
|
" ) ";
|
sql+=userSql;
|
String orderSql=" order by alm_start_time desc ";
|
sql+=orderSql;
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setNum(1);//1表示设备告警
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setDev_name(rs.getString("fbsdevicename"));
|
ddata.setStationName(rs.getString("stationName"));
|
ddata.setStationId(rs.getString("stationId"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
String ddataStr=""+ddata.getStationName() // 机房名称
|
+"在"+ActionUtil.chageDateToString(ddata.getAlm_start_time(), ActionUtil.time_yyyyMMddHHmmss) // 告警开始时间
|
+"出现了"+AlarmDaoFactory.getdevName(ddata.getAlm_type()); // 告警类型名称
|
|
ddata.setNote(ddataStr);
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
//项目下方的滚动,查询该设备告警的实时信息
|
public List serchDev_alarm(Object obj){
|
Batt_devalarm_data ddata=(Batt_devalarm_data) obj;
|
String sql="select distinct db_alarm.tb_devalarm_data.dev_id,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.fbsdevicename,dev_ip,alm_type,alm_start_time,alm_cleared_type " +
|
" from db_alarm.tb_devalarm_data,db_battinf.tb_battinf " +
|
" where db_alarm.tb_devalarm_data.dev_id=db_battinf.tb_battinf.fbsdeviceid and tb_battinf.station_install=1 " +
|
" and db_alarm.tb_devalarm_data.dev_id=? and alm_type=? and alm_start_time=? ";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{ddata.getDev_id(),ddata.getAlm_type(),ddata.getAlm_start_time()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_devalarm_data ddata=new Batt_devalarm_data();
|
ddata.setDev_id(rs.getInt("dev_id"));
|
ddata.setDev_ip(rs.getString("dev_ip"));
|
ddata.setDev_name(rs.getString("fbsdevicename"));
|
ddata.setStationName(rs.getString("stationName"));
|
ddata.setStationId(rs.getString("stationId"));
|
ddata.setAlm_type(rs.getInt("alm_type"));
|
ddata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
ddata.setAlm_cleared_type(rs.getInt("alm_cleared_type"));
|
list.add(ddata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
public static void main(String[] args) throws ParseException {
|
Batt_devalarm_dataImpl dimpl = new Batt_devalarm_dataImpl();
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
Date date1 = sdf.parse("2000-01-01");
|
Date date2 = sdf.parse("2020-01-01");
|
Batt_devalarm_data ddata = new Batt_devalarm_data();
|
ddata.setAlm_start_time(ActionUtil.getSimpDate(date1));
|
ddata.setAlm_start_time1(ActionUtil.getSimpDate(date2));
|
ddata.setStationName1("");
|
ddata.setStationName("");
|
ddata.setStationName2("");
|
ddata.setStationName5("");
|
ddata.setAlm_type(0);
|
Page page = new Page();
|
page.setPageCurr(1);
|
page.setPageSize(20000);
|
User_inf uinf=new User_inf();
|
uinf.setUId(1002);
|
ddata.setPage(page);
|
ddata.setUinf(uinf);
|
Batt_Maint_Dealarm bmd = new Batt_Maint_Dealarm();
|
BattInf binf = new BattInf();
|
binf.setStationName("");
|
binf.setStationName1("");
|
binf.setStationName2("");
|
binf.setStationName5("");
|
binf.setBattProductDate(ActionUtil.getSimpDate(date1));
|
binf.setBattProductDate1(ActionUtil.getSimpDate(date2));
|
|
bmd.setBinf(binf);
|
bmd.setPage(page);
|
bmd.setUinf(uinf);
|
//List list=dimpl.serchIn30(uinf);
|
List<Batt_devalarm_data> list=dimpl.serchByInfo(ddata);
|
for (Batt_devalarm_data b : list) {
|
System.out.println(b);
|
}
|
//List<Batt_devalarm_data> list = dimpl.serchByCondition(bmd);
|
//System.out.println(list.size());
|
/*int nums=dimpl.searchNums(uinf);
|
System.out.println(nums);*/
|
}
|
|
|
|
|
|
}
|