package com.fgkj.mapper.impl;
|
|
import com.fgkj.dto.*;
|
import com.fgkj.mapper.AlarmDaoFactory;
|
import org.apache.ibatis.annotations.Delete;
|
import org.apache.ibatis.annotations.Select;
|
import org.apache.ibatis.annotations.Update;
|
|
import java.util.List;
|
|
public interface Battalarm_dataMapper {
|
|
public boolean add(Object obj);
|
|
// 3.1电池告警实时查询(确认告警)
|
public boolean update(Object obj);
|
|
// 3.1电池告警实时查询(确认告警)(多条记录)
|
@Update("update db_alarm.tb_battalarm_data set alm_is_confirmed=#{alm_is_confirmed},alm_confirmed_time=#{alm_confirmed_time} where num=#{num}")
|
public int updatePro(Battalarm_data obj) ;
|
|
//3.1/3.2电池告警查询(删除记录)
|
public boolean del(Object obj);
|
|
//3.1/3.2电池告警查询(删除记录)<多条记录删除>
|
@Delete("delete from db_alarm.tb_battalarm_data where num=#{num}")
|
public int delPro(Battalarm_data obj);
|
|
//当进程重启时,将实时数据修改为历史记录
|
public boolean NowToHistory();
|
|
public List searchAll();
|
|
// 3.1电池容量告警实时查询
|
/*
|
* 条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id
|
* 组端电压:fault_type_id
|
* 充电电流:fault_level
|
* 放电电流:record_uid
|
* 单体电压:maint_type_id
|
* 单体温度:maint_done
|
* 单体内阻:maint_close
|
* 连接条阻抗:master_id
|
* -----Battalarm_data
|
* MonNum 容量告警告警
|
* Record_Id 容量更换告警
|
* 告警等级
|
* 一级告警:num
|
* 二级告警:battgroupid
|
* 三级告警:master_audit
|
* 四级告警:appoint-uid
|
*
|
* 下限告警/上限告警 tb_battalarm_data
|
* alm_signal_id:为奇数--上限告警
|
* alm_signal_id:为偶数--下限告警
|
*
|
* 当前告警 num: 选中为0 未选中100
|
* 历史告警 monnum:选中为1 未选中100
|
*/
|
public List serchCapAlarm(Object obj);
|
|
// 3.1电池告警实时查询
|
|
/* 条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id
|
* 组端电压:fault_type_id
|
* 充电电流:fault_level
|
* 放电电流:record_uid
|
* 单体电压:maint_type_id
|
* 单体温度:maint_done
|
* 单体内阻:maint_close
|
* 连接条阻抗:master_id
|
* -----Battalarm_data
|
* MonNum 容量告警告警
|
* Record_Id 容量更换告警
|
* 告警等级
|
* 一级告警:num
|
* 二级告警:battgroupid
|
* 三级告警:master_audit
|
* 四级告警:appoint-uid
|
*
|
* 下限告警/上限告警 tb_battalarm_data
|
* alm_signal_id:为奇数--上限告警
|
* alm_signal_id:为偶数--下限告警
|
*
|
* 当前告警 num: 选中为0 未选中100
|
* 历史告警 monnum:选中为1 未选中100
|
*/
|
/*public List serchByCondition(Object obj) {
|
Batt_Maint_Dealarm bmd = (Batt_Maint_Dealarm) obj;
|
//System.out.println(bmd);
|
Battalarm_data adata = bmd.getAdata();
|
BattInf binf=bmd.getBinf();
|
Batt_maint_inf mainf = bmd.getMainf();
|
List<Batt_Maint_Dealarm> list = new ArrayList<Batt_Maint_Dealarm>();
|
String sql="";
|
String numberSql=" SELECT FOUND_ROWS() number";
|
Connection conn=DBUtil.getConn();
|
String baseSql = "select SQL_CALC_FOUND_ROWS distinct db_alarm.tb_battalarm_data.BattGroupId,db_alarm.tb_battalarm_data.num,alm_signal_id,db_alarm.tb_battalarm_data.monnum,alm_value,alm_level,alm_is_confirmed,alm_confirmed_time,alm_start_time,alm_end_time "
|
+ "from db_alarm.tb_battalarm_data "
|
+ "where alm_id in(?,?,?,?,?,?,?,?,?,?) and alm_signal_id%2 in(?,?) " +
|
"and alm_level in(?,?,?,?) and alm_cleared_type=0 " +
|
"and db_alarm.tb_battalarm_data.BattGroupId in (select battgroupid from db_battinf.tb_battinf " +
|
"where ";
|
//用于维护区
|
String station1SqlT=" stationname1!=? ";//全部
|
String station1SqlF=" stationname1=? ";
|
if(binf.getStationName1().equals("")){
|
baseSql+=station1SqlT;
|
}else{
|
baseSql+=station1SqlF;
|
}
|
//用于机房站点
|
String stationSqlT=" and stationname!=? ";//全部
|
String stationSqlF=" and stationname=? ";
|
if(binf.getStationName().equals("")){
|
baseSql+=stationSqlT;
|
}else{
|
baseSql+=stationSqlF;
|
}
|
|
//用于电池组条件
|
String idSqlT="and db_battinf.tb_battinf.BattGroupId!=?) ";//全部
|
String idSqlF="and db_battinf.tb_battinf.BattGroupId=?) ";
|
if(binf.getBattGroupId()==0){
|
baseSql+=idSqlT;
|
}else{
|
baseSql+=idSqlF;
|
}
|
String endSql="order by db_alarm.tb_battalarm_data.BattGroupId,db_alarm.tb_battalarm_data.alm_start_time desc,db_alarm.tb_battalarm_data.monnum asc ";
|
String limitSql=" limit ?,? ";
|
sql=baseSql+endSql+limitSql;
|
//System.out.println(sql);
|
list = DateUtil.executeQueryLimit(
|
sql,
|
conn,
|
new Object[] {
|
mainf.getUsr_id(),
|
mainf.getFault_type_id(),
|
mainf.getFault_level(),
|
mainf.getRecord_uid(),
|
mainf.getMaint_type_id(),
|
mainf.getMaint_done(),
|
mainf.getMaint_close(),
|
mainf.getMaster_id(),
|
adata.getMonNum(),
|
adata.getRecord_Id(),
|
|
adata.getAlm_id(),
|
adata.getAlm_signal_id(),
|
|
mainf.getNum(),
|
mainf.getBattGroupId(),
|
mainf.getMaster_audit(),
|
mainf.getAppoint_uid(),
|
binf.getStationName1(),
|
binf.getStationName(),
|
binf.getBattGroupId(),
|
(bmd.getPage().getPageCurr() - 1)* bmd.getPage().getPageSize(),
|
bmd.getPage().getPageSize() }, new CallBack() {
|
public List getResults(ResultSet rs) {
|
List list = new ArrayList();
|
try {
|
while (rs.next()) {
|
Batt_Maint_Dealarm bmd = new Batt_Maint_Dealarm();
|
|
Battalarm_data adata = new Battalarm_data();
|
adata.setNum(rs.getInt("num"));
|
adata.setBattGroupId(rs.getInt("battGroupId"));
|
adata.setAlm_signal_id(rs.getInt("alm_signal_id"));
|
adata.setMonNum(rs.getInt("monNum"));
|
adata.setAlm_value(rs.getFloat("alm_value"));
|
adata.setAlm_level(rs.getInt("alm_level"));
|
adata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
adata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
adata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
adata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
Page page = new Page();
|
BattInf binf=new BattInf();
|
binf.setBattGroupId(rs.getInt("battGroupId"));
|
bmd.setBinf(binf);
|
bmd.setAdata(adata);
|
bmd.setPage(page);
|
list.add(bmd);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
Batt_Maint_Dealarm blast = new Batt_Maint_Dealarm();
|
Page page=new Page();
|
page.setPageAll(number);
|
blast.setPage(page);
|
list.add(blast);
|
|
return list;
|
}*/
|
// 3.1电池告警实时查询
|
/*
|
* 条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id
|
* 组端电压:fault_type_id
|
* 充电电流:fault_level
|
* 放电电流:record_uid
|
* 单体电压:maint_type_id
|
* 单体温度:maint_done
|
* 单体内阻:maint_close
|
* 连接条阻抗:master_id
|
* -----Battalarm_data
|
* MonNum 容量告警告警
|
* Record_Id 容量更换告警
|
* 告警等级
|
* 一级告警:num
|
* 二级告警:battgroupid
|
* 三级告警:master_audit
|
* 四级告警:appoint-uid
|
*
|
* 下限告警/上限告警 tb_battalarm_data
|
* alm_signal_id:为奇数--上限告警
|
* alm_signal_id:为偶数--下限告警
|
*
|
* 当前告警 num: 选中为0 未选中100
|
* 历史告警 monnum:选中为1 未选中100
|
*/
|
public List serchByCondition(Batt_Maint_Dealarm obj);
|
|
// 3.2电池告警
|
/*
|
* 条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id 119001
|
* 组端电压:fault_type_id 119002
|
* 充电电流:fault_level 119003
|
* 放电电流:record_uid 119004
|
* 单体电压:maint_type_id 119005
|
* 单体温度:maint_done 119006
|
* 单体内阻:maint_close 119007
|
* 连接条阻抗:master_id 119008
|
* -----alarm_data
|
* MonNum 容量告警告警
|
*Record_Id 容量更换告警
|
* 告警等级
|
* 一级告警:num
|
* 二级告警:battgroupid
|
* 三级告警:master_audit
|
* 四级告警:appoint-uid
|
*
|
*
|
* 下限告警/上限告警 alarm_data
|
* alm_signal_id:为奇数--上限告警(alm_id) 选中1 未选中100
|
* alm_signal_id:为偶数--下限告警 (alm_signal_id) 选中0 未选中100
|
*
|
* 告警状态alm_cleared_type;
|
* 当前告警:选中0
|
* 历史告警:选中1
|
* 两者告警:选中100
|
* 全都不选:不选200
|
|
*/
|
/*public List serchByInfo(Object obj) {
|
Batt_Maint_Dealarm bmd = (Batt_Maint_Dealarm) obj;
|
BattInf binf=bmd.getBinf();
|
Batttestdata_inf tdata=bmd.getTdata();
|
Battalarm_data adata = bmd.getAdata();
|
Batt_maint_inf mainf = bmd.getMainf();
|
String sql="";
|
String numberSql="SELECT FOUND_ROWS() number";//存放总数
|
Connection conn=DBUtil.getConn();//sql和numberSql共用一个connection
|
String baseSql = "select SQL_CALC_FOUND_ROWS distinct(db_alarm.tb_battalarm_data.BattGroupId),db_alarm.tb_battalarm_data.num,alm_signal_id,db_alarm.tb_battalarm_data.monnum,alm_value,alm_level,alm_is_confirmed,alm_confirmed_time,alm_start_time,alm_end_time " +
|
"from db_alarm.tb_battalarm_data,db_battinf.tb_battinf " +
|
"where alm_id in(?,?,?,?,?,?) and alm_signal_id%2 in(?,?) " +
|
"and alm_level in(?,?,?,?) " +
|
"and alm_start_time>=? and alm_start_time<=? ";
|
//用于实时告警
|
String almSqlT="and alm_cleared_type=? ";
|
//历史告警
|
String almSqlF="and alm_cleared_type in(?,1,2) ";
|
//两者均包含
|
String almSqlA="and alm_cleared_type in(?,0,1,2) ";
|
if(adata.getAlm_cleared_type()==0){
|
baseSql+=almSqlT;
|
}else if(adata.getAlm_cleared_type()==1){
|
baseSql+=almSqlF;
|
}else if(adata.getAlm_cleared_type()==100){
|
baseSql+=almSqlA;
|
}else if(adata.getAlm_cleared_type()==200){
|
baseSql+=almSqlT;
|
}
|
//用于battinf部分
|
String binfSql=" and db_alarm.tb_battalarm_data.BattGroupId=db_battinf.tb_battinf.BattGroupId ";
|
baseSql+=binfSql;
|
//用于维护区
|
String station1SqlT=" and stationname1!=? ";//全部
|
String station1SqlF=" and stationname1=? ";
|
if(binf.getStationName1().equals("")){
|
baseSql+=station1SqlT;
|
}else{
|
baseSql+=station1SqlF;
|
}
|
//用于机房站点
|
String stationSqlT=" and stationname!=? ";//全部
|
String stationSqlF=" and stationname=? ";
|
if(binf.getStationName().equals("")){
|
baseSql+=stationSqlT;
|
}else{
|
baseSql+=stationSqlF;
|
}
|
//用于电池组条件
|
String idSqlT=" and db_battinf.tb_battinf.BattGroupId!=? ";//全部
|
String idSqlF=" and db_battinf.tb_battinf.BattGroupId=? ";
|
if(binf.getBattGroupId()==0){
|
baseSql+=idSqlT;
|
}else{
|
baseSql+=idSqlF;
|
}
|
String endSql="order by db_alarm.tb_battalarm_data.alm_start_time desc,db_alarm.tb_battalarm_data.monnum asc ";
|
String limitSql=" limit ?,? ";
|
sql=baseSql+endSql+limitSql;
|
//System.out.println(sql);
|
List<Batt_Maint_Dealarm> list= DateUtil.executeQueryLimit(sql,conn,
|
new Object[] {
|
mainf.getFault_type_id(),
|
mainf.getFault_level(),
|
mainf.getRecord_uid(),
|
mainf.getMaint_type_id(),
|
mainf.getMaint_done(),
|
mainf.getMaint_close(),
|
|
|
adata.getAlm_id(),
|
adata.getAlm_signal_id(),
|
|
mainf.getNum(),
|
mainf.getBattGroupId(),
|
mainf.getMaster_audit(),
|
mainf.getAppoint_uid(),
|
|
adata.getAlm_start_time(),
|
adata.getAlm_start_time1(),
|
adata.getAlm_cleared_type(),
|
|
binf.getStationName1(),
|
binf.getStationName(),
|
binf.getBattGroupId(),
|
(bmd.getPage().getPageCurr() - 1)* bmd.getPage().getPageSize(),
|
bmd.getPage().getPageSize()},
|
new CallBack() {
|
public List getResults(ResultSet rs) {
|
List list = new ArrayList();
|
try {
|
while (rs.next()) {
|
Batt_Maint_Dealarm bmd = new Batt_Maint_Dealarm();
|
BattInf binf = new BattInf();
|
|
Battalarm_data adata = new Battalarm_data();
|
adata.setNum(rs.getInt("num"));
|
adata.setBattGroupId(rs.getInt("battGroupId"));
|
adata.setAlm_signal_id(rs.getInt("alm_signal_id"));
|
adata.setMonNum(rs.getInt("monNum"));
|
adata.setAlm_value(rs.getFloat("alm_value"));
|
adata.setAlm_level(rs.getInt("alm_level"));
|
adata.setAlm_is_confirmed(rs.getInt("alm_is_confirmed"));
|
adata.setAlm_confirmed_time(rs.getTimestamp("alm_confirmed_time"));
|
adata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
adata.setAlm_end_time(rs.getTimestamp("alm_end_time"));
|
|
Page page = new Page();
|
bmd.setBinf(binf);
|
bmd.setAdata(adata);
|
|
bmd.setPage(page);
|
list.add(bmd);
|
}
|
} 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).getPage().setPageAll(number);
|
}
|
return list;
|
}*/
|
|
// 3.2电池告警
|
/*
|
* 条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id 119001
|
* 组端电压:fault_type_id 119002
|
* 充电电流:fault_level 119003
|
* 放电电流:record_uid 119004
|
* 单体电压:maint_type_id 119005
|
* 单体温度:maint_done 119006
|
* 单体内阻:maint_close 119007
|
* 连接条阻抗:master_id 119008
|
* -----alarm_data
|
* MonNum 容量告警告警
|
*Record_Id 容量更换告警
|
* 告警等级
|
* 一级告警:num
|
* 二级告警:battgroupid
|
* 三级告警:master_audit
|
* 四级告警:appoint-uid
|
*
|
*
|
* 下限告警/上限告警 alarm_data
|
* alm_signal_id:为奇数--上限告警(alm_id) 选中1 未选中100
|
* alm_signal_id:为偶数--下限告警 (alm_signal_id) 选中0 未选中100
|
*
|
* 告警状态alm_cleared_type;
|
* 当前告警:选中0
|
* 历史告警:选中1
|
* 两者告警:选中100
|
* 全都不选:不选200
|
|
*/
|
public List serchByInfo(Batt_Maint_Dealarm obj);
|
|
// 3.2电池告警
|
/*
|
* 条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id 119001
|
* 组端电压:fault_type_id 119002
|
* 充电电流:fault_level 119003
|
* 放电电流:record_uid 119004
|
* 单体电压:maint_type_id 119005
|
* 单体温度:maint_done 119006
|
* 单体内阻:maint_close 119007
|
* 连接条阻抗:master_id 119008
|
* -----alarm_data
|
* MonNum 容量告警告警
|
*Record_Id 容量更换告警
|
* 告警等级
|
* 一级告警:num
|
* 二级告警:battgroupid
|
* 三级告警:master_audit
|
* 四级告警:appoint-uid
|
*
|
*
|
* 下限告警/上限告警 alarm_data
|
* alm_signal_id:为奇数--上限告警(alm_id) 选中1 未选中100
|
* alm_signal_id:为偶数--下限告警 (alm_signal_id) 选中0 未选中100
|
*
|
* 告警状态alm_cleared_type;
|
* 当前告警:选中0
|
* 历史告警:选中1
|
* 两者告警:选中100
|
* 全都不选:不选200
|
* 包机人
|
* usr_id: 全部100,单个名字对应的uid
|
*/
|
@SuppressWarnings("unchecked")
|
public List serchByInfo1(Object obj);
|
|
//0.5查询实时告警数
|
/*public List serchAlm(Object obj){
|
Batt_Maint_Dealarm bmd=(Batt_Maint_Dealarm) obj;
|
Battalarm_data adata=bmd.getAdata();
|
BattInf binf=bmd.getBinf();
|
String sql="select count(num) as number,alm_id " +
|
"from db_alarm.tb_battalarm_data " +
|
"where " +
|
"alm_cleared_type=0 " ;
|
//根据城市选取
|
String citySql=" and tb_battalarm_data.BattGroupId in (select distinct(db_battinf.tb_battinf.BattGroupId) from db_battinf.tb_battinf where stationname like ? ) GROUP BY(alm_id) ";
|
sql+=citySql;
|
//System.out.println(sql);
|
List list=DateUtil.executeQuery(sql, DBUtil.getConn(), new Object[]{"%"+binf.getStationName()+"%"}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Battalarm_data adata=new Battalarm_data();
|
|
adata.setNum(rs.getInt("number"));
|
adata.setAlm_id(rs.getInt("alm_id"));
|
list.add(adata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}*/
|
@Select("select count(num) as num,alm_id from db_alarm.tb_battalarm_data " +
|
"where alm_cleared_type=0 and tb_battalarm_data.BattGroupId in (select distinct db_battinf.tb_battinf.battgroupid " +
|
" 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=#{uinf.uId} and db_battinf.tb_battinf.stationname like '%${binf.stationName}%') " +
|
" GROUP BY (alm_id) ")
|
public List<Battalarm_data> serchAlm(Batt_Maint_Dealarm obj);
|
|
//0.10实时告警记录总数查询
|
/*public List serchRealTime(){
|
String sql="select count(num) as number " +
|
"from db_alarm.tb_battalarm_data " +
|
"where " +
|
"alm_cleared_type=0 " +
|
"and alm_id not in("+AlarmDaoFactory.Alarm_vol_Online+","+AlarmDaoFactory.Alarm_CapAlarm+","+AlarmDaoFactory.Alarm_CapChange+","+AlarmDaoFactory.Alarm_res_Conn+","+AlarmDaoFactory.ALM_TYPE_DisChargeMonVol_ID+")"+
|
"and db_alarm.tb_battalarm_data.BattGroupId in (select battgroupid from db_battinf.tb_battinf )";
|
//System.out.println(sql);
|
List list=DateUtil.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Battalarm_data adata=new Battalarm_data();
|
adata.setNum(rs.getInt("number"));
|
list.add(adata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}*/
|
|
@Select("select count(num) as num " +
|
"from db_alarm.tb_battalarm_data " +
|
"where " +
|
"alm_cleared_type=0 " +
|
"and alm_id not in('${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapAlarm}','${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapChange}','${@com.fgkj.mapper.AlarmDaoFactory@Alarm_res_Conn}','${@com.fgkj.mapper.AlarmDaoFactory@ALM_TYPE_DisChargeMonVol_ID}')"+
|
"and db_alarm.tb_battalarm_data.BattGroupId in (select distinct db_battinf.tb_battinf.battgroupid " +
|
" 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=#{uId})")
|
public List<Battalarm_data> serchRealTime(User_inf obj);
|
|
// 根据battgroupId和阈值查数据
|
public List serchByBatt(Object obj);
|
|
// 根据battgroupId和alm_cleared_type查新增告警记录
|
public List serchByAlmType(Object obj);
|
|
//根据num取消告警
|
public boolean cancelalarm(Object obj);
|
// "update db_alarm.tb_battalarm_data set record_id="+adata.getRecord_Id()+",alm_end_time='"+DAOHelper.sdf.format(adata.getAlm_end_time())+"',alm_cleared_type="+adata.getAlm_cleared_type()+" where num="+adata.getNum()
|
//根据num取消告警(多条记录)
|
@Update("update db_alarm.tb_battalarm_data set record_id=#{record_Id},alm_end_time=#{alm_end_time} ,alm_cleared_type=#{alm_cleared_type} where num=#{num}")
|
public int cancelalarmPro(Battalarm_data obj);
|
|
//7.2增加容量告警的数据
|
public boolean addPro(Object obj);
|
|
//9.1根据机房信息查询该机房实时告警总数
|
@Select("select count(num) as nums from db_alarm.tb_battalarm_data " +
|
"where battgroupid in (select distinct battgroupid from db_battinf.tb_battinf where stationid=#{stationId} ) " +
|
"and alm_cleared_type=0 and alm_id not in(${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapAlarm},${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapChange},${@com.fgkj.mapper.AlarmDaoFactory@Alarm_res_Conn},${@com.fgkj.mapper.AlarmDaoFactory@ALM_TYPE_DisChargeMonVol_ID}) limit 1 ")
|
public int serchByStationId(BattMap_information obj);
|
|
//9.1根据站点信息(stationName3)查询该机房实时告警总数
|
public int serchBystationName3(Object obj);
|
|
//9.1根据机房stationid查询机房下电池组单体告警情况
|
@Select(" select battgroupid,GROUP_CONCAT(DISTINCT monnum) as monnums from db_alarm.tb_battalarm_data " +
|
" where battgroupid =#{battGroupId} and alm_cleared_type=0 GROUP BY battgroupid limit 1")
|
public List<Battalarm_data> serchMonAlarm(BattInf obj);
|
|
//7.2落后单体筛选出来后,往告警表添加前的判断
|
public int judge(Object obj);
|
|
//饼状图电池单体健康率
|
/*public List serchGood(){
|
String sql="SELECT battgroupid,count(DISTINCT MonNum) as nums,alm_id " +
|
"FROM db_alarm.tb_battalarm_data " +
|
"where BattGroupId in(select BattGroupId from db_battinf.tb_battinf) " +
|
"and alm_id in("+AlarmDaoFactory.Alarm_CapAlarm+","+AlarmDaoFactory.Alarm_CapChange+") " +
|
"and alm_cleared_type=0 " +
|
"GROUP BY battgroupid,alm_id " ;
|
//System.out.println(sql);
|
List list=DateUtil.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
int capAlarm=0;//告警告警总数
|
int capChange=0;//更换告警总数
|
try {
|
while(rs.next()){
|
int num=rs.getInt("nums");
|
int alm_id=rs.getInt("alm_id");
|
if(alm_id==AlarmDaoFactory.Alarm_CapAlarm){
|
capAlarm+=num;
|
}else if(alm_id==AlarmDaoFactory.Alarm_CapChange){
|
capChange+=num;
|
}
|
}
|
list.add(capAlarm);
|
list.add(capChange);
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}*/
|
|
@Select("SELECT battgroupid,count(DISTINCT MonNum) as nums,alm_id " +
|
" FROM db_alarm.tb_battalarm_data " +
|
" where BattGroupId in(select distinct db_battinf.tb_battinf.battgroupid " +
|
" 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=#{uId}) " +
|
" and alm_id in('&{@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapAlarm}','${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapChange}') " +
|
" and alm_cleared_type=0 " +
|
" GROUP BY battgroupid,alm_id ")
|
public List<Alarm_param> serchGood(User_inf obj);
|
|
//项目下方的滚动,查询最新电池告警(旧版本)
|
public List serchTopAlmInBatt();
|
|
//项目下方的滚动,查询最新电池告警(新版本)
|
/*public List serchTopBattTen(){
|
String sql="select distinct db_alarm.tb_battalarm_data.battgroupid,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_alarm.tb_battalarm_data.monnum,alm_id,alm_start_time,alm_signal_id " +
|
" from db_alarm.tb_battalarm_data,db_battinf.tb_battinf " +
|
" where alm_cleared_type=0 " +
|
" and db_alarm.tb_battalarm_data.battgroupid=db_battinf.tb_battinf.battgroupid " +
|
" and alm_id not in("+AlarmDaoFactory.Alarm_vol_Online+","+AlarmDaoFactory.Alarm_CapAlarm+","+AlarmDaoFactory.Alarm_CapChange+","+AlarmDaoFactory.Alarm_res_Conn+","+AlarmDaoFactory.ALM_TYPE_DisChargeMonVol_ID+")"+
|
" order by alm_start_time desc " +
|
" limit 0,5";
|
List list=DateUtil.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Battalarm_data adata=new Battalarm_data();
|
adata.setNum(0);//0表示电池告警
|
adata.setBattGroupId(rs.getInt("battGroupId"));
|
adata.setStationid(rs.getString("stationid"));
|
adata.setStationname(rs.getString("stationname"));
|
adata.setMonNum(rs.getInt("monNum"));
|
adata.setAlm_id(rs.getInt("alm_id"));
|
adata.setAlm_signal_id(rs.getInt("alm_signal_id"));
|
adata.setAlm_start_time(rs.getTimestamp("alm_start_time"));
|
String adataStr=adata.getStationname()
|
+"在"+ActionUtil.chageDateToString(adata.getAlm_start_time(), ActionUtil.time_yyyyMMddHHmmss)
|
+"出现了"+AlarmDaoFactory.getAlarmName(adata.getAlm_signal_id())
|
+"告警";
|
adata.setNote(adataStr);
|
list.add(adata);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}*/
|
|
@Select("select distinct db_alarm.tb_battalarm_data.battgroupid,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_alarm.tb_battalarm_data.monnum,alm_id,alm_start_time,alm_signal_id " +
|
" from db_alarm.tb_battalarm_data,db_battinf.tb_battinf " +
|
" where alm_cleared_type=0 " +
|
" and db_alarm.tb_battalarm_data.battgroupid=db_battinf.tb_battinf.battgroupid " +
|
" and db_alarm.tb_battalarm_data.BattGroupId in (select distinct db_battinf.tb_battinf.battgroupid " +
|
" 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=#{uId} )" +
|
" and alm_id not in('${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapAlarm}','${@com.fgkj.mapper.AlarmDaoFactory@Alarm_CapChange}','%{@com.fgkj.mapper.AlarmDaoFactory@Alarm_res_Conn}','${@com.fgkj.mapper.AlarmDaoFactory@ALM_TYPE_DisChargeMonVol_ID}')"+
|
" order by alm_start_time desc " +
|
" limit 0,5")
|
public List<Battalarm_data> serchTopBattTen(User_inf obj);
|
|
//点击项目下方的滚动,查询该条告警的实时信息
|
@Select("select distinct db_alarm.tb_battalarm_data.battgroupid,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationid,db_alarm.tb_battalarm_data.monnum,alm_id,alm_start_time,alm_signal_id,alm_cleared_type " +
|
" from db_alarm.tb_battalarm_data,db_battinf.tb_battinf " +
|
" where db_battinf.tb_battinf.battgroupid=db_alarm.tb_battalarm_data.battgroupid " +
|
" and db_alarm.tb_battalarm_data.battgroupid=#{battGroupId} and db_alarm.tb_battalarm_data.monnum=#{monNum} and alm_id=#{alm_id} and alm_start_time=#{alm_start_time} ")
|
public List<Battalarm_data> serchBatt_alarm(Battalarm_data obj);
|
|
// 3.1电池告警实时查询<***********跨域专用**************>
|
public List serchByCondition_ky(BattInf obj);
|
|
//查询电池组最近一次告警等级
|
@Select("select alm_level from db_alarm.tb_battalarm_data where battgroupid=#{battGroupId} order by alm_start_time desc limit 1")
|
public Integer serchlevelBatt_alarm(BattInf binf);
|
|
//紫晶山西根据设备id和电池组id查询机房告警信息
|
public int seachStationAlarm(BattInf binf);
|
|
/*public static void main(String[] args) throws ParseException {
|
Battalarm_dataDAOImpl bimp = new Battalarm_dataDAOImpl();
|
|
Page p = new Page();
|
p.setPageCurr(1);
|
p.setPageSize(10);
|
*//*条件所存放的位置前台:tb_batt_maint_inf
|
* 在线电压:usr_id
|
* 组端电压:fault_type_id
|
* 充电电流:fault_level
|
* 放电电流:record_uid
|
* 单体电压:maint_type_id
|
* 单体温度:maint_done
|
* 单体内阻:maint_close
|
* 连接条阻抗:master_id
|
* *//*
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
Date date1 = sdf.parse("2000-01-01");
|
Date date2 = sdf.parse("2020-01-01");
|
Batt_maint_inf mainf=new Batt_maint_inf();
|
mainf.setUsr_id(0);
|
mainf.setFault_type_id(119002);
|
mainf.setFault_level(119003);
|
mainf.setRecord_uid(119004);
|
mainf.setMaint_type_id(119005);
|
mainf.setMaint_done(119006);
|
mainf.setMaint_close(119007);
|
mainf.setMaster_id(0);
|
|
|
mainf.setNum(1);
|
mainf.setBattGroupId(2);
|
mainf.setMaster_audit(3);
|
mainf.setAppoint_uid(4);
|
|
Battalarm_data adata = new Battalarm_data();
|
adata.setAlm_id(0); //下限告警未选中
|
adata.setAlm_signal_id(1); //上限告警选中
|
adata.setAlm_cleared_type(100);
|
adata.setAlm_start_time(ActionUtil.getSimpDate(date1));
|
adata.setAlm_start_time1(ActionUtil.getSimpDate(date2));
|
|
BattInf binf = new BattInf();
|
|
binf.setStationName("");
|
binf.setStationName1("");
|
binf.setBattGroupId(1005066);
|
|
|
User_inf uinf=new User_inf();
|
uinf.setuId(1002);
|
Batt_Maint_Dealarm bmd = new Batt_Maint_Dealarm();
|
bmd.setPage(p);
|
bmd.setAdata(adata);
|
bmd.setMainf(mainf);
|
bmd.setBinf(binf);
|
bmd.setUinf(uinf);
|
|
//List<Batt_Maint_Dealarm> list = bimp.serchByCondition(bmd);
|
*//* List<Batt_Maint_Dealarm> list = bimp.serchByInfo(bmd);
|
for (Batt_Maint_Dealarm b : list) {
|
System.out.println(b);
|
}
|
System.out.println(list.size());*//*
|
// List list=bimp.serchRealTime(uinf);
|
// System.out.println(list);
|
*//*List<Integer> list = bimp.serchGood(uinf);
|
for (int num : list) {
|
System.out.println(num);
|
}
|
System.out.println(list.size());*//*
|
int level=bimp.serchlevelBatt_alarm(binf);
|
System.out.println(level);
|
}*/
|
}
|