package com.example.util;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
public class DB {
private static final String filename = android.os.Environment.getExternalStorageDirectory()+"/weather/database.db";
//查询省
public static List<Map<String, String>> getProvince(){
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "select DISTINCT province from addressIdTbl";
Cursor cursor = database.rawQuery(SQL, null);
cursor.moveToFirst();
do{
Map<String, String> map = new HashMap<String, String>();
map.put("address", cursor.getString(0));
list.add(map);
}while(cursor.moveToNext());
cursor.close();
database.close();
return list;
}
//get city pingying
public static String getCityPY(String id){
String cityPY = "";
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "select city from addressIdTbl where addressID = ?";
Cursor cursor = database.rawQuery(SQL, new String[]{id});
if(cursor.moveToFirst()){
String city = cursor.getString(0);
Log.i("CITY", "city:::: "+city);
String queryPYSQL = "select AllNamePin from NT_areapin where Name = ?";
cursor = database.rawQuery(queryPYSQL, new String[]{city});
if(cursor.moveToFirst()){
cityPY = cursor.getString(0);
Log.i("CITY", "cityPY:::: "+cityPY);
}else{
cityPY ="guangzhou";
}
}else{
cityPY ="guangzhou";
}
return cityPY;
}
//查询市
public static List<Map<String, String>> getCity(String province){
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "select DISTINCT city from addressIdTbl where province = "+"'"+province+"'";
Cursor cursor = database.rawQuery(SQL, null);
cursor.moveToFirst();
do {
Map<String, String> map = new HashMap<String, String>();
map.put("address", cursor.getString(0));
list.add(map);
} while (cursor.moveToNext());
cursor.close();
database.close();
return list;
}
//查询县(区)
public static List<Map<String, String>> getCountry(String city){
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "select country from addressIdTbl where city = "+"'"+city+"'";
Cursor cursor = database.rawQuery(SQL, null);
cursor.moveToFirst();
do{
Map<String, String> map = new HashMap<String, String>();
map.put("address", cursor.getString(0));
list.add(map);
}while(cursor.moveToNext());
cursor.close();
database.close();
return list;
}
//查询地址id号
public static String getAddressId(String country){
String result = "";
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "select addressId from addressIdTbl where country = "+"'"+country+"'";
Cursor cursor = database.rawQuery(SQL, null);
cursor.moveToFirst();
do{
result = cursor.getString(0);
}while(cursor.moveToNext());
cursor.close();
database.close();
return result;
}
//保存添加的地区和id号
public static void saveCityAndId(String city, String id){
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
ContentValues values = new ContentValues();
values.put("city", city);
values.put("addressId", id);
database.insert("cityTbl", null, values);
database.close();
}
//查询添加的地区和id号
public static List<Map<String, String>> getCityAndId(){
List<Map<String, String>> list = new ArrayList<Map<String,String>>();
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "select city,addressId from cityTbl";
Cursor cursor = database.rawQuery(SQL, null);
cursor.moveToFirst();
if(cursor.getCount() > 0){
do{
String city = cursor.getString(0);
String id = cursor.getString(1);
Map<String, String> map = new HashMap<String, String>();
map.put("address", city);
map.put("id", id);
list.add(map);
}while(cursor.moveToNext());
}
cursor.close();
database.close();
return list;
}
//删除指定id的地区记录
public static void deleteCityAndId(String id){
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(filename, null);
String SQL = "delete from cityTbl where addressId = '" + id + "'";
database.execSQL(SQL);
database.close();
}
}