Guest User

Untitled

a guest
Mar 7th, 2018
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 11.78 KB | None | 0 0
  1. package enkay.avbio.Sql;
  2.  
  3. import android.content.ContentValues;
  4. import android.content.Context;
  5. import android.database.Cursor;
  6. import android.database.sqlite.SQLiteDatabase;
  7. import android.database.sqlite.SQLiteOpenHelper;
  8. import android.util.Log;
  9.  
  10.  
  11. import java.util.ArrayList;
  12. import java.util.List;
  13.  
  14. import enkay.avbio.Model.User;
  15.  
  16. /**
  17.  * Created by Robin on 2/17/2018.
  18.  */
  19.  
  20. public class DatabaseHelper extends SQLiteOpenHelper {
  21.     private static final int DATABASE_VERSION = 1;
  22.  
  23.     private static final String DATABASE_NAME = "UserManager.db";
  24.  
  25.     private static final String TABLE_USER = "user";
  26.  
  27.  
  28.     private static final String COLUMN_USER_ID = "user_id";
  29.     private static final String COLUMN_USER_NAME = "user_name";
  30.     private static final String COLUMN_USER_EMAIL = "user_email";
  31.     private static final String COLUMN_USER_PASSWORD = "user_password";
  32.     private static final String COLUMN_USER_ADDRESS = "user_address";
  33.     private static final String CULUMN_USER_COMPANY_NAME = "user_company_name";
  34.     private static final String CULUMN_USER_COMPANY_ADDRESS = "user_company_address";
  35.     private static final String CULUMN_USER_GST_NO = "user_gst_no";
  36.     private static final String CULUMN_USER_PAN_NO = "user_pan_no" , COL_LOGO ="LOGO";
  37.  
  38.  
  39.  
  40.     private String CREATE_USER_TABLE = "CREATE TABLE " + TABLE_USER + "("
  41.             + COLUMN_USER_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
  42.             + COLUMN_USER_NAME + " TEXT, "
  43.             + COLUMN_USER_ADDRESS + " TEXT, "
  44.             + CULUMN_USER_COMPANY_NAME + " TEXT, "
  45.             + CULUMN_USER_GST_NO + " TEXT, " + CULUMN_USER_PAN_NO + " TEXT,"
  46.             + CULUMN_USER_COMPANY_ADDRESS + " TEXT, " + COLUMN_USER_EMAIL + " TEXT, "
  47.             + COLUMN_USER_PASSWORD + " TEXT ," +
  48.             "" + COL_LOGO + " BLOB"+
  49.             "); ";
  50.  
  51.  
  52.     private String DROP_USER_TABLE = "DROP TABLE IF EXISTS" + TABLE_USER;
  53.  
  54.  
  55.     public DatabaseHelper(Context context) {
  56.         super(context, DATABASE_NAME, null, DATABASE_VERSION);
  57.     }
  58.  
  59.     @Override
  60.     public void onCreate(SQLiteDatabase db) {
  61.         db.execSQL(CREATE_USER_TABLE);
  62.     }
  63.  
  64.     @Override
  65.     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  66.         db.execSQL(DROP_USER_TABLE);
  67.         onCreate(db);
  68.     }
  69.  
  70.  
  71.     public void addUser(User user) {
  72.         SQLiteDatabase db = this.getWritableDatabase();
  73.         ContentValues values = new ContentValues();
  74.         values.put(COLUMN_USER_NAME, user.getName());
  75.         values.put(COLUMN_USER_EMAIL, user.getEmail());
  76.         values.put(COLUMN_USER_PASSWORD, user.getPasswod());
  77.         values.put(COLUMN_USER_ADDRESS, user.getAddress());
  78.         values.put(CULUMN_USER_COMPANY_NAME, user.getCompanyName());
  79.         values.put(CULUMN_USER_COMPANY_ADDRESS, user.getCompanyAddress());
  80.         values.put(CULUMN_USER_GST_NO, user.getGstNo());
  81.         values.put(CULUMN_USER_PAN_NO, user.getPanNo());
  82.         values.put(COL_LOGO,user.getImageByte());
  83.  
  84.         //code to sahi hai
  85.  
  86.  
  87.         db.insert(TABLE_USER, null, values);
  88.         db.close();
  89.     }
  90.  
  91.  
  92.     public List<User> getAllUser() {
  93.         String[] columns = {
  94.                 COLUMN_USER_ID,
  95.                 COLUMN_USER_NAME,
  96.                 COLUMN_USER_EMAIL,
  97.                 COLUMN_USER_PASSWORD,
  98.                 COLUMN_USER_ADDRESS,
  99.                 CULUMN_USER_COMPANY_NAME,
  100.                 CULUMN_USER_COMPANY_ADDRESS,
  101.                 CULUMN_USER_GST_NO,
  102.                 CULUMN_USER_PAN_NO,
  103.                // KEY_IMAGE,
  104.  
  105.  
  106.         };
  107.         // sorting orders
  108.         String sortOrder =
  109.                 COLUMN_USER_NAME + " ASC";
  110.         List<User> userList = new ArrayList<User>();
  111.  
  112.         SQLiteDatabase db = this.getReadableDatabase();
  113.  
  114.  
  115.         Cursor cursor = db.query(TABLE_USER, //Table to query
  116.  
  117.                 null,
  118.                 null,    //no need to pass column array if you want all the columns
  119.                 null,        //columns for the WHERE clause
  120.                 null,        //The values for the WHERE clause
  121.                 null,       //group the rows
  122.                 null,         //filter by row groups
  123.                 null); //The sort order
  124.  
  125.  
  126.  
  127.         // Traversing through all rows and adding to list
  128.         while (cursor.moveToNext()) {
  129.  
  130.             User user = new User();
  131.             user.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(COLUMN_USER_ID))));
  132.             user.setName(cursor.getString(cursor.getColumnIndex(COLUMN_USER_NAME)));
  133.             user.setEmail(cursor.getString(cursor.getColumnIndex(COLUMN_USER_EMAIL)));
  134.             user.setPasswod(cursor.getString(cursor.getColumnIndex(COLUMN_USER_PASSWORD)));
  135.             user.setAddress(cursor.getString(cursor.getColumnIndex(COLUMN_USER_ADDRESS)));
  136.             user.setCompanyName(cursor.getString(cursor.getColumnIndex(CULUMN_USER_COMPANY_NAME)));
  137.             user.setCompanyAddress(cursor.getString(cursor.getColumnIndex(CULUMN_USER_COMPANY_ADDRESS)));
  138.             user.setGstNo(cursor.getString(cursor.getColumnIndex(CULUMN_USER_GST_NO)));
  139.             user.setPanNo(cursor.getString(cursor.getColumnIndex(CULUMN_USER_PAN_NO)));
  140.             //user.setImage(cursor.getBlob(cursor.getColumnIndex(KEY_IMAGE)));
  141.  
  142.             // Adding user record to lis
  143.             userList.add(user);
  144.         }
  145.         cursor.close();
  146.         db.close();
  147.  
  148.         Log.i(TAG, "getAllUser: List empty = "+userList.isEmpty());
  149.  
  150.  
  151.  
  152.         // return user list
  153.         return userList;
  154.     }
  155.  
  156.     public void updateUser(User user) {
  157.         SQLiteDatabase db = this.getWritableDatabase();
  158.  
  159.         ContentValues values = new ContentValues();
  160.         values.put(COLUMN_USER_NAME, user.getName());
  161.         values.put(COLUMN_USER_EMAIL, user.getEmail());
  162.         values.put(COLUMN_USER_PASSWORD, user.getPasswod());
  163.         values.put(COLUMN_USER_ADDRESS, user.getAddress());
  164.         values.put(CULUMN_USER_COMPANY_NAME, user.getCompanyName());
  165.         values.put(CULUMN_USER_COMPANY_ADDRESS, user.getCompanyAddress());
  166.         values.put(CULUMN_USER_GST_NO, user.getGstNo());
  167.         values.put(CULUMN_USER_PAN_NO, user.getPanNo());
  168.  
  169.         // updating row
  170.         db.update(TABLE_USER, values, COLUMN_USER_ID + " = ?",
  171.                 new String[]{String.valueOf(user.getId())});
  172.         db.close();
  173.     }
  174.  
  175.     public void deleteUser(User saler) {
  176.         SQLiteDatabase db = this.getWritableDatabase();
  177.         // delete user record by id
  178.         db.delete(TABLE_USER, COLUMN_USER_ID + " = ?",
  179.                 new String[]{String.valueOf(saler.getId())});
  180.         db.close();
  181.     }
  182.  
  183.  
  184.     String TAG = DatabaseHelper.class.getSimpleName();
  185.  
  186.     public boolean checkUserInfo(String email, String password) {
  187.         String[] colums = {
  188.                 COLUMN_USER_ID
  189.         };
  190.         SQLiteDatabase db = this.getReadableDatabase();
  191.         String selection = COLUMN_USER_EMAIL + "= ?";
  192.  
  193.         String[] SelectionArgs = {email};
  194.  
  195.         String query = "SELECT * from "+TABLE_USER+" " +
  196.                 "WHERE "+COLUMN_USER_EMAIL +" = '"+email+"'" +
  197.                 " AND "+COLUMN_USER_PASSWORD +" = '"+password+"'";
  198.  
  199.         Log.i(TAG, "checkUser: query  =" +query);
  200.  
  201.         Cursor c = db.rawQuery(query, null);
  202.  
  203.         while(c.moveToNext()) {
  204.             Log.i(TAG, "checkUser: email = " + c.getString(c.getColumnIndex(COLUMN_USER_EMAIL)));
  205.  
  206.             Log.i(TAG, "checkUser: pass = "+c.getString(c.getColumnIndex(COLUMN_USER_PASSWORD)));
  207.         }
  208.         return c.getCount()!= 0;
  209.  
  210. //
  211. //        Cursor cursor = db.query(TABLE_USER,
  212. //
  213. //                colums,
  214. //                selection,
  215. //                SelectionArgs,
  216. //                null,
  217. //                null,
  218. //                null);
  219. //        int cursetorCount = cursor.getCount();
  220. //        cursor.close();
  221. //        db.close();
  222. //
  223. //        if (cursetorCount > 0) {
  224. //            return true;
  225. //
  226. //        }
  227. //        return false;
  228.     }
  229.  
  230.     public boolean checkUser(String email) {
  231.         String[] colums = {
  232.                 COLUMN_USER_ID
  233.         };
  234.         SQLiteDatabase db = this.getReadableDatabase();
  235.         String selection = COLUMN_USER_EMAIL + "= ?";
  236.  
  237.         String[] SelectionArgs = {email};
  238.  
  239.         String query = "SELECT * from "+TABLE_USER+" " +
  240.                 "WHERE "+COLUMN_USER_EMAIL +" = '"+email+"'" ;
  241.  
  242.         Log.i(TAG, "checkUser: query  =" +query);
  243.  
  244.         Cursor c = db.rawQuery(query, null);
  245.  
  246.         while(c.moveToNext()) {
  247.             Log.i(TAG, "checkUser: email = " + c.getString(c.getColumnIndex(COLUMN_USER_EMAIL)));
  248.  
  249.         }
  250.         return c.getCount()!= 0;
  251.  
  252. //
  253. //        Cursor cursor = db.query(TABLE_USER,
  254. //
  255. //                colums,
  256. //                selection,
  257. //                SelectionArgs,
  258. //                null,
  259. //                null,
  260. //                null);
  261. //        int cursetorCount = cursor.getCount();
  262. //        cursor.close();
  263. //        db.close();
  264. //
  265. //        if (cursetorCount > 0) {
  266. //            return true;
  267. //
  268. //        }
  269. //        return false;
  270.     }
  271.  
  272.  
  273.     public User getUserDetail(String email){
  274.  
  275.         User user = new User();
  276.  
  277.         String query = "SELECT * FROM  "+TABLE_USER
  278.                 +" WHERE "+COLUMN_USER_EMAIL+" = '"+email+"'";
  279.  
  280.         Log.i(TAG, "getUserDetail: query = "+query);
  281.  
  282.         Cursor cursor = getReadableDatabase().rawQuery(query, null);
  283.  
  284.         while(cursor.moveToNext()){
  285.             user.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(COLUMN_USER_ID))));
  286.             user.setName(cursor.getString(cursor.getColumnIndex(COLUMN_USER_NAME)));
  287.             user.setEmail(cursor.getString(cursor.getColumnIndex(COLUMN_USER_EMAIL)));
  288.             user.setPasswod(cursor.getString(cursor.getColumnIndex(COLUMN_USER_PASSWORD)));
  289.             user.setAddress(cursor.getString(cursor.getColumnIndex(COLUMN_USER_ADDRESS)));
  290.             user.setCompanyName(cursor.getString(cursor.getColumnIndex(CULUMN_USER_COMPANY_NAME)));
  291.             user.setCompanyAddress(cursor.getString(cursor.getColumnIndex(CULUMN_USER_COMPANY_ADDRESS)));
  292.             user.setGstNo(cursor.getString(cursor.getColumnIndex(CULUMN_USER_GST_NO)));
  293.             user.setPanNo(cursor.getString(cursor.getColumnIndex(CULUMN_USER_PAN_NO)));
  294.             user.setImageByte(cursor.getBlob(cursor.getColumnIndex(COL_LOGO)));
  295.  
  296.  
  297.         }
  298.  
  299.  
  300.         return user;
  301.     }
  302.  
  303.  
  304.     public boolean checkUser(String email, String password) {
  305.  
  306.         // array of columns to fetch
  307.         String[] columns = {
  308.                 COLUMN_USER_ID
  309.         };
  310.         SQLiteDatabase db = this.getReadableDatabase();
  311.         // selection criteria
  312.         String selection = COLUMN_USER_EMAIL + " = ?" + " AND " + COLUMN_USER_PASSWORD + " = ?";
  313.  
  314.         // selection arguments
  315.         String[] selectionArgs = {email, password};
  316.  
  317.         // query user table with conditions
  318.         /**
  319.          * Here query function is used to fetch records from user table this function works like we use sql query.
  320.          * SQL query equivalent to this query function is
  321.          * SELECT user_id FROM user WHERE user_email = 'jack@androidtutorialshub.com' AND user_password = 'qwerty';
  322.          */
  323.         Cursor cursor = db.query(TABLE_USER, //Table to query
  324.                 columns,                    //columns to return
  325.                 selection,                  //columns for the WHERE clause
  326.                 selectionArgs,              //The values for the WHERE clause
  327.                 null,                       //group the rows
  328.                 null,                       //filter by row groups
  329.                 null);                      //The sort order
  330.  
  331.         int cursorCount = cursor.getCount();
  332.  
  333.         cursor.close();
  334.         db.close();
  335.         if (cursorCount > 0) {
  336.             return true;
  337.         }
  338.  
  339.         return false;
  340.     }
  341. }
Add Comment
Please, Sign In to add comment