· 8 years ago · Feb 09, 2018, 06:38 AM
1package com.foodshahi.www.foodshahi;
2
3import android.content.ContentValues;
4import android.content.Context;
5import android.database.Cursor;
6import android.database.sqlite.SQLiteDatabase;
7import android.database.sqlite.SQLiteOpenHelper;
8import android.util.Log;
9
10import java.util.HashMap;
11
12/**
13 * Created by Waseem Ahmed on 1/9/2018.
14 */
15
16public class SQLiteHandler extends SQLiteOpenHelper {
17
18 private static final String TAG = SQLiteHandler.class.getSimpleName();
19 private static final int DATABASE_VERSION = 2;
20 private static final String DATABASE_NAME = "food_shahi";
21 private static final String TABLE_USER = "user";
22 String userId;
23 private static final String KEY_ID = "id";
24 private static String KEY_UID = "uid";
25 private static final String KEY_UNAME = "name";
26 private static final String KEY_CID = "cid";
27 private static final String KEY_CAREAID = "careaid";
28 private static final String KEY_UMOBILE = "umobile";
29 private static final String KEY_UEMAIL = "uemail";
30 private static final String KEY_UADDRESS = "uaddress";
31 private static final String KEY_UPASSWORD = "upassword";
32 private static final String KEY_UDESCRIPTION = "udescription";
33 private static final String KEY_UIMAGE = "uimage";
34 private static final String KEY_UFBURL = "ufburl";
35 private static final String KEY_UTWURL = "utwurl";
36 private static final String KEY_UYOUURL = "uyouurl";
37 private static final String KEY_GURL = "ugurl";
38 private static final String KEY_UROLE = "urole";
39 private static final String KEY_CNAME = "cname";
40 public SQLiteHandler(Context context){
41 super(context,DATABASE_NAME,null,DATABASE_VERSION);
42 }
43 @Override
44 public void onCreate(SQLiteDatabase db) {
45 String CREATE_LOGIN_TABLE = "CREATE TABLE IF NOT EXISTS "+ TABLE_USER+" ("+KEY_UID+" TEXT,"+KEY_UNAME+" TEXT,"+
46 KEY_CID+" TEXT,"+KEY_CAREAID+" TEXT,"+KEY_UMOBILE+" TEXT,"+KEY_UEMAIL+" TEXT,"+KEY_UADDRESS+
47 " TEXT,"+KEY_UPASSWORD+" TEXT,"+KEY_UDESCRIPTION+" TEXT,"+KEY_UIMAGE+" TEXT,"+KEY_UFBURL+
48 " TEXT,"+KEY_UTWURL+" TEXT,"+KEY_UYOUURL+" TEXT,"+KEY_GURL+" TEXT,"+KEY_UROLE+" TEXT,"+KEY_CNAME+
49 " TEXT"+")";
50 db.execSQL(CREATE_LOGIN_TABLE);
51 Log.d(TAG,"Database Tables Created");
52 }
53
54 @Override
55 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
56 db.execSQL("DROP TABLE IF EXISTS "+ TABLE_USER);
57 onCreate(db);
58 }
59
60 public void addUser(String uid,String uname,String cid,String careaid,String umobile,String uemail, String uaddress,
61 String upassword,String udescription,String uimage,String ufburl,String utwurl,String uyouurl,
62 String ugurl,String urole,String cname){
63 SQLiteDatabase db = this.getWritableDatabase();
64 ContentValues values = new ContentValues();
65 values.put(KEY_UID,uid);
66 values.put(KEY_UNAME,uname);
67 values.put(KEY_CID,cid);
68 values.put(KEY_CAREAID,careaid);
69 values.put(KEY_UMOBILE,umobile);
70 values.put(KEY_UEMAIL,uemail);
71 values.put(KEY_UADDRESS,uaddress);
72 values.put(KEY_UPASSWORD,upassword);
73 values.put(KEY_UDESCRIPTION,udescription);
74 values.put(KEY_UIMAGE,uimage);
75 values.put(KEY_UFBURL,ufburl);
76 values.put(KEY_UTWURL,utwurl);
77 values.put(KEY_UYOUURL,uyouurl);
78 values.put(KEY_GURL,ugurl);
79 values.put(KEY_UROLE,urole);
80 values.put(KEY_CNAME,cname);
81 long id = db.insert(TABLE_USER,null,values);
82 db.close();
83 Log.v(TAG,"New user inserted into sqlite: " + id);
84
85 }
86
87 public HashMap<String, String> getUserDetails(){
88 HashMap<String, String> user = new HashMap<String, String>();
89 String selectQuery = "SELECT * FROM " + TABLE_USER;
90 SQLiteDatabase db = this.getReadableDatabase();
91 Cursor cursor = db.rawQuery(selectQuery,null);
92 cursor.moveToFirst();
93 if(cursor.getCount() > 0){
94 user.put("uid", cursor.getString(0));
95 user.put("name", cursor.getString(1));
96 user.put("cid", cursor.getString(2));
97 user.put("careaid", cursor.getString(3));
98 user.put("umobile", cursor.getString(4));
99 user.put("uemail", cursor.getString(5));
100
101 user.put("uaddress", cursor.getString(6));
102 user.put("upassword",cursor.getString(7));
103 user.put("udescription",cursor.getString(8));
104 user.put("uimage",cursor.getString(9));
105 user.put("ufburl",cursor.getString(10));
106 user.put("utwurl",cursor.getString(11));
107 user.put("uyouurl",cursor.getString(12));
108 user.put("ugurl",cursor.getString(13));
109 user.put("urole",cursor.getString(14));
110 user.put("cname",cursor.getString(15));
111 }
112 userId = cursor.getString(0);
113 Log.v(TAG,"user id in sqlite: "+ userId);
114 cursor.close();
115 db.close();
116 Log.v(TAG, "Fetching user from SQLite: " + user.toString());
117 return user;
118 }
119 public void updateCityId(String cityId){
120 SQLiteDatabase db = this.getWritableDatabase();
121 ContentValues values = new ContentValues();
122 values.put(KEY_CID,cityId);
123 db.update(TABLE_USER,values,KEY_UID=userId,null);
124 Log.v(TAG,"city id in database: " + cityId);
125 }
126 public void updateCityName(String cityName){
127 SQLiteDatabase db = this.getWritableDatabase();
128 ContentValues values = new ContentValues();
129 values.put(KEY_CNAME,cityName);
130 db.update(TABLE_USER,values,KEY_UID=userId,null);
131 }
132
133 public void deleteUser(){
134 SQLiteDatabase db = this.getWritableDatabase();
135 db.delete(TABLE_USER,null,null);
136 db.close();
137 Log.d(TAG,"Deleted all user info from sqlite database");
138 }
139}