public bool LoadMedicationSpread() { SQLiteDatabase sqlDatabase = null; try { var sql = @"SELECT [Dosage], [FoodRelevance] FROM [MedicationSpread] WHERE [ID] = ? AND [MedicationID] = ?"; string[] values = new string[] { ID.ToString(), MedicationID.ToString() }; Globals dbHelp = new Globals(); dbHelp.OpenDatabase(); sqlDatabase = dbHelp.GetSQLiteDatabase(); if (sqlDatabase != null) { if (sqlDatabase.IsOpen) { ICursor medicationItem = sqlDatabase.RawQuery(sql, values); if (medicationItem.Count > 0) { medicationItem.MoveToFirst(); MedicationTakeTime = new MedicationTime(); MedicationTakeTime.LoadMedicationTime(ID); MedicationTakeReminder = new MedicationReminder(); MedicationTakeReminder.LoadMedicationTime(ID); if (!MedicationTakeReminder.IsSet) { MedicationTakeReminder = null; } Dosage = medicationItem.GetInt(medicationItem.GetColumnIndex("Dosage")); FoodRelevance = (ConstantsAndTypes.MEDICATION_FOOD)medicationItem.GetInt(medicationItem.GetColumnIndex("FoodRelevance")); } else { dbHelp.CloseDatabase(); return(false); } } dbHelp.CloseDatabase(); } return(true); } catch (Exception e) { Log.Error(TAG, "LoadMedicationSpread: Exception - " + e.Message); if (sqlDatabase != null && sqlDatabase.IsOpen) { sqlDatabase.Close(); } return(false); } }
public bool Save(int medicationSpreadID, int medicationID) { SQLiteDatabase sqlDatabase = null; try { Globals dbHelp = new Globals(); dbHelp.OpenDatabase(); sqlDatabase = dbHelp.GetSQLiteDatabase(); if (sqlDatabase != null) { if (sqlDatabase.IsOpen) { if (medicationSpreadID == -1) { Log.Info(TAG, "Save (insert): Saving New Medication Spread"); ContentValues values = new ContentValues(); values.Put("MedicationID", medicationID); values.Put("Dosage", Dosage.ToString()); values.Put("FoodRelevance", (int)FoodRelevance); ID = (int)sqlDatabase.Insert("MedicationSpread", null, values); Log.Info(TAG, "Save (insert): Saved Spread with ID - " + ID.ToString() + ", medicationID - " + medicationID.ToString() + ", Dosage - " + Dosage.ToString() + ", Food Relevance - " + StringHelper.MedicationFoodForConstant(FoodRelevance)); IsNew = false; IsDirty = false; if (MedicationTakeTime != null) { MedicationTakeTime.Save(ID); } if (MedicationTakeReminder != null) { MedicationTakeReminder.Save(ID); } } else { ContentValues values = new ContentValues(); values.Put("MedicationID", medicationID); values.Put("Dosage", Dosage.ToString()); values.Put("FoodRelevance", (int)FoodRelevance); string whereClause = "ID = ? AND MedicationID = ?"; string[] wheres = new string[] { ID.ToString(), MedicationID.ToString() }; sqlDatabase.Update("MedicationSpread", values, whereClause, wheres); if (MedicationTakeTime != null) { MedicationTakeTime.Save(ID); } if (MedicationTakeReminder != null) { MedicationTakeReminder.Save(ID); } IsDirty = false; } sqlDatabase.Close(); return(true); } } return(false); } catch (Exception e) { Log.Error(TAG, "Save: Exception - " + e.Message); if (sqlDatabase != null && sqlDatabase.IsOpen) { sqlDatabase.Close(); } return(false); } }