· 9 years ago · Dec 20, 2016, 04:38 PM
1public class Patient extends SQLiteOpenHelper {
2public static final int database_ver = 4; //ToDo: DO NOT CHANGE IT
3public String TEXT_BETWEEN = " TEXT,";
4public String TEXT_FINAL = " TEXT)";
5public String INTEGER_BETWEEN = " INTEGER,";
6public String INTEGER_FINAL = " INTEGER)";
7public String CREATE_TABLE = "CREATE TABLE";
8
9public String CREATE_QUERY_PATIENT =
10 CREATE_TABLE + TablesData.Tableinfo.TABLE_PATIENT +
11 "("+ TablesData.Tableinfo.ID +
12 TablesData.Tableinfo.USER_NAME + TEXT_BETWEEN+
13 TablesData.Tableinfo.USER_ADDRESS + TEXT_BETWEEN +
14 TablesData.Tableinfo.USER_EMAIL + TEXT_BETWEEN +
15 TablesData.Tableinfo.USER_PHONE + INTEGER_BETWEEN +
16 TablesData.Tableinfo.USER_PASSWORD + TEXT_BETWEEN +
17 TablesData.Tableinfo.USER_STATUS + TEXT_FINAL;
18
19public String CREATE_QUERY_FAMILY_FRIENDS =
20 CREATE_TABLE + TablesData.Tableinfo.TABLE_FAMILY_FRIENDS +
21 "(" + TablesData.Tableinfo.ID +
22 TablesData.Tableinfo.USER_NAME + TEXT_BETWEEN +
23 TablesData.Tableinfo.USER_PHONE + INTEGER_BETWEEN +
24 TablesData.Tableinfo.USER_EMAIL + TEXT_FINAL;
25
26public String CREATE_DOCTOR =
27 CREATE_TABLE + TablesData.Tableinfo.TABLE_DOCTOR +
28 "(" + TablesData.Tableinfo.ID +
29 TablesData.Tableinfo.USER_NAME + TEXT_BETWEEN +
30 TablesData.Tableinfo.USER_PHONE + INTEGER_BETWEEN +
31 TablesData.Tableinfo.USER_EMAIL + TEXT_BETWEEN +
32 TablesData.Tableinfo.DOCTOR_REPORT + TEXT_FINAL;
33
34public String CREATE_COLLAPSE_MEDICINE =
35 CREATE_TABLE + TablesData.Tableinfo.TABLE_COLLAPSE_MEDICINE +
36 "(" + TablesData.Tableinfo.ID +
37 TablesData.Tableinfo.MEDICINE_NAME + TEXT_BETWEEN+
38 TablesData.Tableinfo.MEDICINE_TIME_SECONDS + INTEGER_BETWEEN +
39 TablesData.Tableinfo.MEDICINE_TIME_MINUTE + INTEGER_BETWEEN +
40 TablesData.Tableinfo.MEDICINE_TIME_HOURS + INTEGER_FINAL;
41
42public String CREATE_ADVICE =
43 CREATE_TABLE + TablesData.Tableinfo.TABLE_ADVICE +
44 "(" + TablesData.Tableinfo.ID +
45 TablesData.Tableinfo.RECOMMENDED_FOOD + TEXT_BETWEEN +
46 TablesData.Tableinfo.RECOMMENDED_JUICE + TEXT_BETWEEN +
47 TablesData.Tableinfo.ADVICE + TEXT_FINAL;
48
49
50public Patient(Context context) {
51 super(context, TablesData.Tableinfo.DATA_BASE_NAME, null, database_ver);
52}
53
54@Override
55public void onCreate(SQLiteDatabase patient) {
56 // patientdb.execSQL("create table Patient(id INTEGER PRIMARY KEY AUTOINCREMENT,Name Text,Phone INTEGER,Address TEXT,Email TEXT)");
57 patient.execSQL(CREATE_QUERY_PATIENT);
58 patient.execSQL(CREATE_QUERY_FAMILY_FRIENDS);
59 patient.execSQL(CREATE_DOCTOR);
60 patient.execSQL(CREATE_ADVICE);
61 patient.execSQL(CREATE_COLLAPSE_MEDICINE);
62
63}
64
65@Override
66public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
67 sqLiteDatabase.execSQL("DROP TABLE IF EXISTS PATIENT");
68 sqLiteDatabase.execSQL("DROP TABLE IF EXISTS"+ TablesData.Tableinfo.TABLE_ADVICE);
69 sqLiteDatabase.execSQL("DROP TABLE IF EXISTS"+ TablesData.Tableinfo.TABLE_COLLAPSE_MEDICINE);
70 sqLiteDatabase.execSQL("DROP TABLE IF EXISTS"+ TablesData.Tableinfo.TABLE_FAMILY_FRIENDS);
71 sqLiteDatabase.execSQL("DROP TABLE IF EXISTS"+ TablesData.Tableinfo.TABLE_DOCTOR);
72 onCreate(sqLiteDatabase);
73}
74
75
76public boolean InsertPatientData(String Name,int Phone,String Address,String Email,String password,String status){
77 SQLiteDatabase patientdb = this.getWritableDatabase();
78 ContentValues contentValues = new ContentValues();
79 contentValues.put(TablesData.Tableinfo.USER_NAME,Name);
80 contentValues.put(TablesData.Tableinfo.USER_PHONE,Phone);
81 contentValues.put(TablesData.Tableinfo.USER_ADDRESS,Address);
82 contentValues.put(TablesData.Tableinfo.USER_EMAIL,Email);
83 contentValues.put(TablesData.Tableinfo.USER_PASSWORD,password);
84 contentValues.put(TablesData.Tableinfo.USER_STATUS,status);
85
86 long result = patientdb.insert(TablesData.Tableinfo.TABLE_PATIENT,"0",contentValues);
87
88 if (result == -1){
89 return false;
90 }
91 else {
92 return true;
93 }
94/* todo don't forget to insert other tables patient table just finished */
95
96}
97public ArrayList ReadPatientTable(){
98 // todo this method not working for all table make methods for each table to show it
99 String Readraw = "select * from "+ TablesData.Tableinfo.TABLE_PATIENT;
100 ArrayList arrayList = new ArrayList();
101
102 SQLiteDatabase patient = this.getReadableDatabase();
103 Cursor res = patient.rawQuery(Readraw,null);
104
105 res.moveToFirst();
106
107 while(res.isAfterLast() == false)
108 {
109 String t1 = res.getString(0);
110 String t2 = res.getString(1);
111 String t3 = res.getString(2);
112 String t4 = res.getString(3);
113 String t5 = res.getString(4);
114 /* String t6 = res.getString(5);
115 String t7 = res.getString(6);
116 +"Your Status: " +t6 + "n" +
117 "Your Password" + t7
118*/
119 arrayList.add(
120 "ID: "+t1 + "n"+
121 "Your Name: " + t2 + "n" +
122 "Your Phone: " + t3 + "n" +
123 "Your Address: " + t4 + "n" +
124 "Your Email: "+ t5 + "n"
125
126 );
127 // arrayList.add("n"+t1);
128 res.moveToNext();
129 }
130
131 return arrayList;
132}
133
134public class TablesData {
135private TablesData (){}
136public static abstract class Tableinfo implements BaseColumns{
137 public static final String USER_NAME = "Name";
138 public static final String USER_PHONE = "Phone";
139 public static final String USER_ADDRESS = "Address";
140 public static final String USER_EMAIL = "Email";
141 public static final String USER_PASSWORD = "Password";
142 public static final String USER_STATUS = "Status";
143 public static final String DOCTOR_REPORT = "Report";
144 public static final String RECOMMENDED_FOOD = "Recommended Food";
145 public static final String RECOMMENDED_JUICE = "Recommended juice";
146 public static final String ADVICE = "Advice";
147 public static final String MEDICINE_NAME = "Medicine name";
148 public static final String MEDICINE_TIME_SECONDS = "Medicine seconds";
149 public static final String MEDICINE_TIME_MINUTE= "Medicine minute";
150 public static final String MEDICINE_TIME_HOURS = "Medicine hours";
151 public static final String DATA_BASE_NAME = "SPDA.db";
152 public static final String TABLE_PATIENT = "Patient";
153 public static final String TABLE_DOCTOR = "Doctor";
154 public static final String TABLE_FAMILY_FRIENDS = "Family and friends";
155 public static final String TABLE_ADVICE = "Advice";
156 public static final String TABLE_COLLAPSE_MEDICINE = "collapse medicine";
157 public static final String ID = "ID INTEGER PRIMARY KEY AUTOINCREMENT,";
158
159}
160
161}
162
163public class Database extends AppCompatActivity {
164private EditText editTextname;
165private EditText editTextphone;
166private EditText editTextaddress;
167private EditText editTextemail;
168private EditText editTextPass;
169private EditText editTextstatus;
170private Button buttonAdd;
171private Button buttonUpdate;
172private Button buttonDelete;
173private TextView textViewphone;
174private ListView MyViewList;
175private Patient patient = new Patient(this);
176
177@Override
178protected void onCreate(Bundle savedInstanceState) {
179 super.onCreate(savedInstanceState);
180 setContentView(R.layout.database);
181
182 editTextname = (EditText)findViewById(R.id.editTextname);
183 editTextphone = (EditText)findViewById(R.id.editTextphone);
184 editTextaddress = (EditText)findViewById(R.id.editTextaddress);
185 editTextemail = (EditText)findViewById(R.id.editTextemail);
186 editTextstatus = (EditText)findViewById(R.id.editTextstatus);
187 editTextPass = (EditText)findViewById(R.id.editTextPass);
188
189
190 textViewphone = (TextView)findViewById(R.id.textViewphone);
191
192 buttonAdd = (Button)findViewById(R.id.buttonAdd);
193 buttonUpdate = (Button)findViewById(R.id.buttonUpdate);
194 buttonDelete = (Button)findViewById(R.id.buttonDelete);
195
196 MyViewList = (ListView)findViewById(R.id.MyViewList);
197
198 //PatientTable();
199 buttonAdd.setOnClickListener(new View.OnClickListener() {
200 @Override
201
202 public void onClick(View view) {
203 String Name = "", Phone = "", Address = "", Email = ""; //todo error here
204 String Password = "1234m",Status = "Good";
205
206 int intphone = 0;
207
208 Name = editTextname.getText().toString();
209 Phone = editTextphone.getText().toString();
210 Password = editTextPass.getText().toString();
211 Status = editTextstatus.getText().toString();
212 try {
213 intphone = Integer.parseInt(Phone);
214 textViewphone.setText("");
215 } catch (NumberFormatException e) {
216 textViewphone.setText("Enter phone");
217 }
218 Address = editTextaddress.getText().toString();
219 Email = editTextemail.getText().toString();
220
221 if(patient.InsertPatientData(Name, intphone, Address, Email,Password,Status)== true){
222 Toast.makeText(Database.this,"Patient info saved !",Toast.LENGTH_SHORT).show();
223 PatientTable();
224 }
225 else
226 Toast.makeText(Database.this,"Patient info not saved !",Toast.LENGTH_SHORT).show();
227
228
229 }
230 });
231
232}
233public void PatientTable(){
234 ArrayList<String> listdata = patient.ReadPatientTable();
235 ArrayAdapter arrayadapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,listdata);
236 MyViewList.setAdapter(arrayadapter);
237}