package
com.cca.mobilephone.db.dao;
import
java.util.ArrayList;
import
java.util.List;
import
android.content.ContentValues;
import
android.content.Context;
import
android.database.Cursor;
import
android.database.sqlite.SQLiteDatabase;
import
com.cca.mobilephone.db.BlackNumberOpenHeloper;
import
com.cca.mobilephone.domain.BlackNumberInfo;
public
class
BlackNumberDao {
private
BlackNumberOpenHeloper openhelper;
/**
* 数据库的构造函数
* @param context
*/
public
BlackNumberDao(Context context) {
super
();
openhelper=
new
BlackNumberOpenHeloper(context);
}
/**
* 往数据库中增加号码
* @param phone 增加的电话号码
* @param mode 模式
* @return
*/
public
boolean
add(String phone,String mode){
SQLiteDatabase db=openhelper.getWritableDatabase();
ContentValues values=
new
ContentValues();
values.put(
"phone"
, phone);
values.put(
"mode"
, mode);
long
id=db.insert(
"blacknumberinfo"
,
null
, values);
db.close();
if
(id!=-
1
){
return
true
;
}
else
{
return
false
;
}
}
/**
* 修改黑名单的拦截模式
* @param phone 要修改的黑名单号码
* @param newmode 新的拦截模式
* @return 修改是否成功
*/
public
boolean
update(String phone,String newmode){
SQLiteDatabase db=openhelper.getWritableDatabase();
ContentValues values=
new
ContentValues();
values.put(
"mode"
, newmode);
int
rowcount=db.update(
"blacknumberinfo"
, values,
"phone=?"
,
new
String[]{phone});
db.close();
if
(rowcount==
0
){
return
false
;
}
else
{
return
true
;
}
}
/**
* 查找黑名单号码的拦截模式
* @param phone 要查找的电话号码
* @return 返回拦截的模式
*/
public
String find(String phone){
String mode=
null
;
SQLiteDatabase db=openhelper.getReadableDatabase();
Cursor cursor=db.query(
"blacknumberinfo"
,
null
,
"phone=?"
,
new
String[]{phone},
null
,
null
,
null
);
if
(cursor.moveToNext()){
mode=cursor.getString(cursor.getColumnIndex(
"mode"
));;
}
cursor.close();
db.close();
return
mode;
}
/**
* 删除黑名单号码
* @param phone 要删除的号码
* @return 是否删除成功
*/
public
boolean
delete(String phone){
SQLiteDatabase db=openhelper.getWritableDatabase();
int
rowcount=db.delete(
"blacknumberinfo"
,
"phone=?"
,
new
String[]{phone});
db.close();
if
(rowcount==
0
){
return
false
;
}{
return
true
;
}
}
/**
* 返回全部的黑名单信息
* @return
*/
public
List<blacknumberinfo> findAll(){
SQLiteDatabase db=openhelper.getReadableDatabase();
Cursor cursor=db.query(
"blacknumberinfo"
,
null
,
null
,
null
,
null
,
null
,
"_id desc"
);
List<blacknumberinfo> infos=
new
ArrayList<blacknumberinfo>();
while
(cursor.moveToNext()){
String phone=cursor.getString(cursor.getColumnIndex(
"phone"
));
String mode=cursor.getString(cursor.getColumnIndex(
"mode"
));
BlackNumberInfo info=
new
BlackNumberInfo();
info.setPhone(phone);
info.setMode(mode);
infos.add(info);
}
cursor.close();
db.close();
return
infos;
}
</blacknumberinfo></blacknumberinfo></blacknumberinfo>