package com.fgkj.dao.impl;
|
|
import java.sql.Connection;
|
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.dao.LimitNumberFactory;
|
import com.fgkj.db.DBUtil;
|
import com.fgkj.dto.BattInf;
|
import com.fgkj.dto.Batt_Maint_Dealarm;
|
import com.fgkj.dto.Batt_attention;
|
import com.fgkj.dto.Batt_maint_inf;
|
import com.fgkj.dto.Page;
|
|
public class Batt_attentionImpl implements BaseDAO,CallBack{
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Batt_attention batt=new Batt_attention();
|
batt.setNum(rs.getInt("num"));
|
batt.setBattGroupId(rs.getInt("battGroupId"));
|
batt.setMonNum(rs.getInt("monNum"));
|
batt.setUid(rs.getInt("uid"));
|
batt.setNote(rs.getString("note"));
|
list.add(batt);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
|
return list;
|
}
|
//添加关注
|
public boolean add(Object obj) {
|
Batt_attention batt=(Batt_attention) obj;
|
String sql="insert into web_site.tb_batt_attention(battGroupId,monNum,uid) values(?,?,?)";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{batt.getBattGroupId(),batt.getMonNum(),batt.getUid()});
|
return bl;
|
}
|
|
public boolean update(Object obj) {
|
// TODO Auto-generated method stub
|
return false;
|
}
|
//取消关注
|
public boolean del(Object obj) {
|
Batt_attention batt=(Batt_attention) obj;
|
String sql="delete from web_site.tb_batt_attention where battgroupid=? and monnum=? and uid=?";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{batt.getBattGroupId(),batt.getMonNum(),batt.getUid()});
|
return bl;
|
}
|
|
public List searchAll() {
|
// TODO Auto-generated method stub
|
return null;
|
}
|
//根据电池组的筛选条件,查询单体的实际电压
|
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 web_site.tb_batt_attention.battgroupid,web_site.tb_batt_attention.monnum" +
|
",db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationname1,db_battinf.tb_battinf.battgroupname,db_battinf.tb_battinf.moncapstd,db_battinf.tb_battinf.monvolstd " +
|
",db_ram_db.tb_batt_rtdata.mon_vol "+
|
" from web_site.tb_batt_attention,db_battinf.tb_battinf,db_ram_db.tb_batt_rtdata " +
|
" where web_site.tb_batt_attention.battgroupid=db_battinf.tb_battinf.battgroupid " +
|
" and web_site.tb_batt_attention.battgroupid=db_ram_db.tb_batt_rtdata.battgroupid " +
|
" and web_site.tb_batt_attention.monnum=db_ram_db.tb_batt_rtdata.mon_num " +
|
" and web_site.tb_batt_attention.uid=? " ;
|
//用于维护区
|
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 countSqlT=" and web_site.tb_batt_attention.monnum!=? ";//全部
|
String countSqlF=" and web_site.tb_batt_attention.monnum=? " ;
|
if(binf.getMonNum()==0){
|
baseSql+=countSqlT;
|
}else{
|
baseSql+=countSqlF;
|
}
|
//排序
|
String endSql=" order by web_site.tb_batt_attention.battgroupid ";
|
//分页
|
String limitSql=" limit ?,? ";
|
sql=baseSql+endSql+limitSql;
|
//System.out.println(sql);
|
List<BattInf> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{
|
binf.getNum()
|
,binf.getStationName1(),binf.getStationName(),binf.getBattGroupId(),binf.getMonNum()
|
,(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()}, 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.setStationId(rs.getString("stationId"));
|
binf.setStationName(rs.getString("stationName"));
|
binf.setStationName1(rs.getString("stationName1"));
|
binf.setBattGroupName(rs.getString("battGroupName"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonVolLowToAvg(rs.getFloat("mon_vol"));//实时电压
|
binf.setMonNum(rs.getInt("monNum"));//单体
|
list.add(binf);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
if(list!=null&&list.size()>0){
|
list.get(list.size()-1).setSize(number);
|
}
|
return list;
|
}
|
//关注之前识别是否关注过
|
public int judgeInOrNot(Object obj) {
|
Batt_attention batt=(Batt_attention) obj;
|
String sql="select count(num) as nums from web_site.tb_batt_attention where battgroupid=? and monnum=? and uid=? limit 1";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{batt.getBattGroupId(),batt.getMonNum(),batt.getUid()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
int nums=rs.getInt("nums");
|
if(nums>0){
|
list.add(nums);
|
}
|
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
//System.out.println(list);
|
int flag=0;//标识符
|
if(list!=null&&list.size()>0){
|
flag=1;
|
}else{
|
flag=0;
|
}
|
return flag;
|
}
|
public static void main(String[] args) {
|
Batt_attentionImpl bimpl=new Batt_attentionImpl();
|
BattInf binf=new BattInf();
|
binf.setStationName("");
|
binf.setStationName1("");
|
binf.setBattGroupId(0);
|
binf.setMonNum(0);
|
binf.setNum(1002);
|
Page page=new Page();
|
page.setPageCurr(1);
|
page.setPageSize(10);
|
|
Batt_Maint_Dealarm bmd=new Batt_Maint_Dealarm();
|
bmd.setBinf(binf);
|
bmd.setPage(page);
|
List list=bimpl.serchByCondition(bmd);
|
System.out.println(list);
|
}
|
public List serchByInfo(Object obj) {
|
// TODO Auto-generated method stub
|
return null;
|
}
|
}
|