From 2947b797e392b33d5815ac1843d399ab284eff4c Mon Sep 17 00:00:00 2001 From: vend Date: Fri, 19 Nov 2021 20:43:25 +0500 Subject: [PATCH] updated the migrations See issue https://github.com/opensrp/opensrp-client-immunization/issues/181 --- .../repository/VaccineRepository.java | 2 ++ .../sample/repository/SampleRepository.java | 17 +++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/opensrp-immunization/src/main/java/org/smartregister/immunization/repository/VaccineRepository.java b/opensrp-immunization/src/main/java/org/smartregister/immunization/repository/VaccineRepository.java index 41ced3f9..000f6cdd 100644 --- a/opensrp-immunization/src/main/java/org/smartregister/immunization/repository/VaccineRepository.java +++ b/opensrp-immunization/src/main/java/org/smartregister/immunization/repository/VaccineRepository.java @@ -61,6 +61,8 @@ public class VaccineRepository extends BaseRepository { public static final String UPDATE_TABLE_ADD_TEAM_COL = "ALTER TABLE " + VACCINE_TABLE_NAME + " ADD COLUMN " + TEAM + " VARCHAR;"; public static final String UPDATE_TABLE_ADD_TEAM_ID_COL = "ALTER TABLE " + VACCINE_TABLE_NAME + " ADD COLUMN " + TEAM_ID + " VARCHAR;"; public static final String UPDATE_TABLE_ADD_CHILD_LOCATION_ID_COL = "ALTER TABLE " + VACCINE_TABLE_NAME + " ADD COLUMN " + CHILD_LOCATION_ID + " VARCHAR;"; + public static final String UPDATE_TABLE_VACCINES_ADD_OUTREACH_COL = "ALTER TABLE "+ VACCINE_TABLE_NAME + " ADD COLUMN "+ OUTREACH + " INTEGER DEFAULT 0;"; + public static final String UPDATE_OUTREACH_QUERRY = "UPDATE "+ VACCINE_TABLE_NAME+" SET " + OUTREACH + " = 1 WHERE location_id != ?;"; private static final String TAG = VaccineRepository.class.getCanonicalName(); private static final String VACCINE_SQL = "CREATE TABLE vaccines (_id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,base_entity_id VARCHAR NOT NULL,program_client_id VARCHAR NULL,name VARCHAR NOT NULL,calculation INTEGER,date DATETIME NOT NULL,anmid VARCHAR NULL,location_id VARCHAR NULL,sync_status VARCHAR, updated_at INTEGER NULL, UNIQUE(base_entity_id, program_client_id, name) ON CONFLICT IGNORE)"; private static final String BASE_ENTITY_ID_INDEX = "CREATE INDEX " + VACCINE_TABLE_NAME + "_" + BASE_ENTITY_ID + "_index ON " + VACCINE_TABLE_NAME + "(" + BASE_ENTITY_ID + " COLLATE NOCASE);"; diff --git a/sample/src/main/java/org/smartregister/immunization/sample/repository/SampleRepository.java b/sample/src/main/java/org/smartregister/immunization/sample/repository/SampleRepository.java index 04029dcf..58cc32a3 100644 --- a/sample/src/main/java/org/smartregister/immunization/sample/repository/SampleRepository.java +++ b/sample/src/main/java/org/smartregister/immunization/sample/repository/SampleRepository.java @@ -14,8 +14,10 @@ import org.smartregister.immunization.repository.VaccineRepository; import org.smartregister.immunization.repository.VaccineTypeRepository; import org.smartregister.immunization.sample.BuildConfig; +import org.smartregister.immunization.sample.application.SampleApplication; import org.smartregister.immunization.util.IMDatabaseUtils; import org.smartregister.repository.AlertRepository; +import org.smartregister.repository.AllSharedPreferences; import org.smartregister.repository.EventClientRepository; import org.smartregister.repository.Repository; @@ -83,6 +85,8 @@ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { case 5: upgradeToVersion5(db); break; + case 6: + upgradeToVersion6(db); default: break; } @@ -199,4 +203,17 @@ private void upgradeToVersion5(SQLiteDatabase db) { } } + private void upgradeToVersion6(SQLiteDatabase db) + { + try{ + AllSharedPreferences sharedPreferences = SampleApplication.getInstance().context().userService() + .getAllSharedPreferences(); + db.execSQL(VaccineRepository.UPDATE_TABLE_VACCINES_ADD_OUTREACH_COL); + db.execSQL(VaccineRepository.UPDATE_OUTREACH_QUERRY, new String[]{sharedPreferences.fetchDefaultLocalityId(sharedPreferences.fetchPioneerUser())}); + + } catch (Exception e) { + Log.e(TAG,"upgradeToVersion6" + Log.getStackTraceString(e)); + } + } + }