package com.fgkj.impl;
|
|
import android.database.Cursor;
|
import android.database.sqlite.SQLiteDatabase;
|
|
import com.fgkj.dao.ActionUtil;
|
import com.fgkj.dao.BaseDAO;
|
import com.fgkj.dto.Battalram_data;
|
import com.fgkj.dto.Page;
|
|
import java.text.ParseException;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
public class Battalram_dataImpl implements BaseDAO{
|
|
@Override
|
public boolean add(SQLiteDatabase db, Object obj) {
|
return false;
|
}
|
|
@Override
|
public boolean update(SQLiteDatabase db, Object obj) {
|
return false;
|
}
|
|
@Override
|
public boolean del(SQLiteDatabase db, Object obj) {
|
return false;
|
}
|
@Override
|
public List searchAll(SQLiteDatabase db) {
|
return null;
|
}
|
//查询所有实时或者历史告警数据,全部传100
|
@Override
|
public List serchByCondition(SQLiteDatabase db, Object obj) {
|
Battalram_data adata=(Battalram_data)obj;
|
String numsql = "select count(*) from tb_battalarm_data,tb_battinf where tb_battinf.BattGroupId=tb_battalarm_data.BattGroupId ";
|
String sql=" select distinct tb_battalarm_data.num,tb_battalarm_data.BattGroupId,tb_battalarm_data.MonNum,alm_id,alm_signal_id,alm_start_time,alm_end_time,alm_value,alm_is_confirmed,alm_confirmed_time,alm_cleared_type" +
|
",tb_battinf.BattGroupName " +
|
" from tb_battalarm_data,tb_battinf where tb_battinf.BattGroupId=tb_battalarm_data.BattGroupId ";
|
//告警类型
|
String typeSqlT=" and alm_cleared_type!=? ";
|
String typeSqlF=" and alm_cleared_type=? ";
|
if(adata.getAlm_cleared_type()==100){
|
sql+=typeSqlT;
|
numsql+=typeSqlT;
|
}else{
|
sql+=typeSqlF;
|
numsql+=typeSqlF;
|
}
|
//排序
|
String endSql=" order by alm_start_time desc ";
|
//分页
|
String limitSql=" LIMIT ? OFFSET ? ";
|
sql=sql+endSql+limitSql;
|
|
//查询总数
|
Cursor cs = db.rawQuery(numsql, new String[]{String.valueOf(adata.getAlm_cleared_type())});
|
cs.moveToFirst();
|
int count = cs.getInt(0);
|
cs.close();
|
|
List list=new ArrayList();
|
Cursor rs=db.rawQuery(sql,new String[]{String.valueOf(adata.getAlm_cleared_type()),String.valueOf(adata.getPage().getPageSize()),String.valueOf((adata.getPage().getPageCurr()-1)*adata.getPage().getPageSize())});
|
try {
|
while (rs.moveToNext()){
|
Battalram_data a=new Battalram_data();
|
a.setNum(rs.getInt(rs.getColumnIndex("num")));
|
a.setBattGroupId(rs.getInt(rs.getColumnIndex("BattGroupId")));
|
a.setMonNum(rs.getInt(rs.getColumnIndex("MonNum")));
|
a.setAlm_id(rs.getInt(rs.getColumnIndex("alm_id")));
|
a.setAlm_signal_id(rs.getInt(rs.getColumnIndex("alm_signal_id")));
|
a.setAlm_start_time(ActionUtil.sdf.parse(rs.getString(rs.getColumnIndex("alm_start_time"))));
|
a.setAlm_end_time(ActionUtil.sdf.parse(rs.getString(rs.getColumnIndex("alm_end_time"))));
|
a.setAlm_value(rs.getDouble(rs.getColumnIndex("alm_value")));
|
a.setAlm_is_confirmed(rs.getInt(rs.getColumnIndex("alm_is_confirmed")));
|
a.setAlm_confirmed_time(ActionUtil.sdf.parse(rs.getString(rs.getColumnIndex("alm_confirmed_time"))));
|
a.setAlm_cleared_type(rs.getInt(rs.getColumnIndex("alm_cleared_type")));
|
a.setNote(rs.getString(rs.getColumnIndex("BattGroupName")));
|
Page page=new Page();
|
page.setPageAll(count);
|
a.setPage(page);
|
list.add(a);
|
}
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}finally {
|
rs.close();
|
}
|
|
return list;
|
}
|
//查询所有的告警
|
public int serchAllNum(SQLiteDatabase db, Object obj) {
|
Battalram_data adata=(Battalram_data)obj;
|
String sql=" select count(*) as allnum from tb_battalarm_data where ";
|
//告警类型
|
String typeSqlT="alm_cleared_type!=?";
|
String typeSqlF="alm_cleared_type=?";
|
if(adata.getAlm_cleared_type()==100){
|
sql+=typeSqlT;
|
}else{
|
sql+=typeSqlF;
|
}
|
//排序
|
String endSql=" order by alm_start_time desc ";
|
List list=new ArrayList();
|
Cursor rs=db.rawQuery(sql,new String[]{String.valueOf(adata.getAlm_cleared_type())});
|
rs.moveToFirst();
|
int count = rs.getInt(0);
|
rs.close();
|
return count;
|
}
|
@Override
|
public List serchByInfo(SQLiteDatabase db, Object obj) {
|
return null;
|
}
|
}
|