package com.fgkj.impl; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import com.fgkj.dao.ActionUtil; import com.fgkj.dao.BaseDAO; import com.fgkj.dto.Battresdata; import java.text.ParseException; import java.util.ArrayList; import java.util.List; public class BattresdataImpl implements BaseDAO { //批量插入信息 @Override public boolean add(SQLiteDatabase db, Object obj) { List list=( List)obj; boolean bl=true; try { db.beginTransaction(); if(list!=null&&list.size()>0){ for (int i = 0; i < list.size(); i++) { Battresdata b=list.get(i); ContentValues cv=BattresdataImpl.getContentValues(b); long row=db.insert("tb_battresdata_"+b.getBattGroupId(),null,cv); if(row<0){ bl=false; } } } db.setTransactionSuccessful(); db.endTransaction(); } catch (Exception e) { e.printStackTrace(); } return bl; } //批量修改 @Override public boolean update(SQLiteDatabase db, Object obj) { List list=( List)obj; boolean bl=true; try { db.beginTransaction(); if(list!=null&&list.size()>0){ for (int i = 0; i < list.size(); i++) { Battresdata b=list.get(i); ContentValues cv=BattresdataImpl.getContentValues(b); String sql="num=?"; long row=db.update("tb_battresdata_"+b.getBattGroupId(),cv,sql,new String[]{String.valueOf(b.getNum())}); if(row<0){ bl=false; } } } db.setTransactionSuccessful(); db.endTransaction(); } catch (Exception e) { e.printStackTrace(); } return bl; } //批量删除 @Override public boolean del(SQLiteDatabase db, Object obj) { List list=( List)obj; boolean bl=true; try { db.beginTransaction(); if(list!=null&&list.size()>0){ for (int i = 0; i < list.size(); i++) { Battresdata b=list.get(i); ContentValues cv=BattresdataImpl.getContentValues(b); String sql="num=?"; long row=db.delete("tb_battresdata_"+b.getBattGroupId(),sql,new String[]{String.valueOf(b.getNum())}); if(row<0){ bl=false; } } } db.setTransactionSuccessful(); db.endTransaction(); } catch (Exception e) { e.printStackTrace(); } return bl; } @Override public List searchAll(SQLiteDatabase db) { return null; } //根据battgroupid查询内阻测试记录 @Override public List serchByCondition(SQLiteDatabase db, Object obj) { Battresdata rdata=(Battresdata)obj; String sql=" select num,BattGroupId,test_record_count,test_type,test_starttime,group_vol,test_curr,mon_num,mon_vol,mon_tmp,mon_res,mon_ser,conn_res " + " from tb_battresdata_"+rdata.getBattGroupId()+" where BattGroupId=? and mon_num=? order by test_starttime asc "; Cursor rs=db.rawQuery(sql,new String[]{String.valueOf(rdata.getBattGroupId()),String.valueOf(rdata.getMon_num())}); List list=new ArrayList(); try { while(rs.moveToNext()){ Battresdata r=new Battresdata(); r.setNum(rs.getInt(rs.getColumnIndex("num"))); r.setBattGroupId(rs.getInt(rs.getColumnIndex("BattGroupId"))); r.setTest_record_count(rs.getInt(rs.getColumnIndex("test_record_count"))); r.setTest_type(rs.getInt(rs.getColumnIndex("test_type"))); r.setTest_starttime(ActionUtil.sdf.parse(rs.getString(rs.getColumnIndex("test_starttime")))); r.setGroup_vol(rs.getFloat(rs.getColumnIndex("group_vol"))); r.setTest_curr(rs.getFloat(rs.getColumnIndex("test_curr"))); r.setMon_num(rs.getFloat(rs.getColumnIndex("mon_num"))); r.setMon_vol(rs.getFloat(rs.getColumnIndex("mon_vol"))); r.setMon_tmp(rs.getFloat(rs.getColumnIndex("mon_tmp"))); r.setMon_res(rs.getFloat(rs.getColumnIndex("mon_res"))); r.setMon_ser(rs.getFloat(rs.getColumnIndex("mon_ser"))); r.setConn_res(rs.getFloat(rs.getColumnIndex("conn_res"))); list.add(r); } } catch (ParseException e) { e.printStackTrace(); }finally { rs.close(); } return list; } @Override public List serchByInfo(SQLiteDatabase db, Object obj) { return null; } //获取ContentValues public static ContentValues getContentValues(Object obj){ Battresdata bdata=(Battresdata)obj; ContentValues cv=new ContentValues(); cv.put("num",bdata.getNum()); cv.put("BattGroupId", bdata.getBattGroupId()); cv.put("test_record_count", bdata.getTest_record_count()); cv.put("test_type",bdata.getTest_type()); cv.put("test_starttime", ActionUtil.sdf.format(bdata.getTest_starttime())); cv.put("group_vol",bdata.getGroup_vol()); cv.put("test_curr", bdata.getTest_curr()); cv.put("mon_vol",bdata.getMon_vol()); cv.put("mon_tmp", bdata.getMon_tmp()); cv.put("mon_res",bdata.getMon_res()); cv.put("mon_ser", bdata.getMon_ser()); cv.put("conn_res", bdata.getConn_res()); return cv; } }