From 2d332f9b34e8ae1239d1272becfdc50a43f4cb12 Mon Sep 17 00:00:00 2001 From: hilpitome Date: Fri, 17 Nov 2023 14:15:33 +0300 Subject: [PATCH 1/8] set force remote login as true --- .../repository/DashboardRepository.java | 33 +++++++++++-------- .../anc/application/AncApplication.java | 4 +-- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java index 9b57ba4..bd00957 100644 --- a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java +++ b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java @@ -26,6 +26,7 @@ import java.time.LocalDate; import java.time.Period; import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeParseException; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -95,25 +96,29 @@ public static int getWomanLateVisits(LocalDate datetoday) { Cursor cursor = db.rawQuery(query, null); int count=0; while (cursor.moveToNext()){ - String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); + try{ + String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); - DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate d1=null; - if(next_contact_date.charAt(0)=='-'){ - d1 = LocalDate.parse(next_contact_date.substring(1), df); - } - else{ - d1 = LocalDate.parse(next_contact_date, df); - } + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); + LocalDate d1=null; + if(next_contact_date.charAt(0)=='-'){ + d1 = LocalDate.parse(next_contact_date.substring(1), df); + } + else{ + d1 = LocalDate.parse(next_contact_date, df); + } - if(datetoday.isAfter(d1)) { + if(datetoday.isAfter(d1)) { // if(datetoday.isEqual(d1)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - count++;} - }else{ + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ + count++;} + }else{ - } + } + } catch (DateTimeParseException e){ + Timber.e(e); + } } diff --git a/reference-app/src/main/java/org/smartregister/anc/application/AncApplication.java b/reference-app/src/main/java/org/smartregister/anc/application/AncApplication.java index ae08c77..571538d 100644 --- a/reference-app/src/main/java/org/smartregister/anc/application/AncApplication.java +++ b/reference-app/src/main/java/org/smartregister/anc/application/AncApplication.java @@ -203,14 +203,14 @@ public Context getContext() { @Override public void onTimeChanged() { Utils.showToast(this, this.getString(org.smartregister.anc.library.R.string.device_time_changed)); - context.userService().getAllSharedPreferences().saveForceRemoteLogin(true, context.allSharedPreferences().fetchRegisteredANM()); + context.userService().getAllSharedPreferences().saveForceRemoteLogin(false, context.allSharedPreferences().fetchRegisteredANM()); logoutCurrentUser(); } @Override public void onTimeZoneChanged() { Utils.showToast(this, this.getString(org.smartregister.anc.library.R.string.device_timezone_changed)); - context.userService().getAllSharedPreferences().saveForceRemoteLogin(true, context.allSharedPreferences().fetchRegisteredANM()); + context.userService().getAllSharedPreferences().saveForceRemoteLogin(false, context.allSharedPreferences().fetchRegisteredANM()); logoutCurrentUser(); } } \ No newline at end of file From ac9193791ce315c8459644fdbc43705913588297 Mon Sep 17 00:00:00 2001 From: hilpitome Date: Wed, 22 Nov 2023 14:24:20 +0300 Subject: [PATCH 2/8] fix formating --- .../repository/DashboardRepository.java | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java index bd00957..e00278d 100644 --- a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java +++ b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java @@ -100,22 +100,22 @@ public static int getWomanLateVisits(LocalDate datetoday) { String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); - DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate d1=null; - if(next_contact_date.charAt(0)=='-'){ - d1 = LocalDate.parse(next_contact_date.substring(1), df); - } - else{ - d1 = LocalDate.parse(next_contact_date, df); - } + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); + LocalDate d1=null; + if(next_contact_date.charAt(0)=='-'){ + d1 = LocalDate.parse(next_contact_date.substring(1), df); + } + else{ + d1 = LocalDate.parse(next_contact_date, df); + } - if(datetoday.isAfter(d1)) { + if(datetoday.isAfter(d1)) { // if(datetoday.isEqual(d1)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - count++;} - }else{ + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ + count++;} + }else{ - } + } } catch (DateTimeParseException e){ Timber.e(e); } From ae9455f88d5a2c0f49e80f46cc1429df16493699 Mon Sep 17 00:00:00 2001 From: hilpitome Date: Wed, 22 Nov 2023 14:30:13 +0300 Subject: [PATCH 3/8] fix formating --- .../repository/DashboardRepository.java | 96 +++++++++---------- 1 file changed, 47 insertions(+), 49 deletions(-) diff --git a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java index e00278d..06075f0 100644 --- a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java +++ b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java @@ -49,33 +49,33 @@ public class DashboardRepository extends BaseRepository { @RequiresApi(api = Build.VERSION_CODES.O) public static int getDueContactDash(LocalDate datetoday) { - SQLiteDatabase db = getMasterRepository().getReadableDatabase(); + SQLiteDatabase db = getMasterRepository().getReadableDatabase(); // String query = "SELECT COUNT(*) FROM " + getRegisterQueryProvider().getDetailsTable() + " WHERE " + DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE+ "= '"+datetoday+"'"; // SQLiteStatement statement = db.compileStatement(query); // long count = statement.simpleQueryForLong(); // return count; String query = "SELECT * FROM " + getRegisterQueryProvider().getDetailsTable(); - Cursor cursor = db.rawQuery(query, null); - int count=0; - while (cursor.moveToNext()){ - String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); + Cursor cursor = db.rawQuery(query, null); + int count = 0; + while (cursor.moveToNext()) { + String next_contact_date = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate d1=null; - if(next_contact_date.charAt(0)=='-'){ + LocalDate d1 = null; + if (next_contact_date.charAt(0) == '-') { d1 = LocalDate.parse(next_contact_date.substring(1), df); - } - else{ + } else { d1 = LocalDate.parse(next_contact_date, df); } // if(datetoday.isEqual(d1) || datetoday.isAfter(d1)) { - if(datetoday.isEqual(d1)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - count++;} - }else{ + if (datetoday.isEqual(d1)) { + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + count++; + } + } else { } @@ -228,9 +228,8 @@ private static boolean isVaccinatedToday(String woman_id) { if (val.get(VALUE).toString().equals("done_today")) { return true; - } - else { - return false; + } else { + return false; } } } catch (JSONException e) { @@ -305,9 +304,8 @@ private static boolean isDewormingPerfomed(String woman_id) { if (val.get(VALUE).toString().equals("yes")) { return true; - } - else { - return false; + } else { + return false; } } } catch (JSONException e) { @@ -349,22 +347,21 @@ private static boolean isAccompanied(String woman_id) { private static boolean isReferred(String woman_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '"+woman_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '" + woman_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { try { if (cursor.getString(3).equals("referred_hosp")) { - JSONObject val = new JSONObject(cursor.getString(4)); + JSONObject val = new JSONObject(cursor.getString(4)); - if (val.get(VALUE).toString().equals("yes")) { + if (val.get(VALUE).toString().equals("yes")) { - return true; - } - else { - return false; - } + return true; + } else { + return false; + } } } catch (JSONException e) { e.printStackTrace(); @@ -383,17 +380,17 @@ public static long getProcessedVisits(String dateStart, String dateEnd) { // Cursor cursor = db.rawQuery(query, null); // SQLiteStatement statement = db.compileStatement(query); // long count = statement.simpleQueryForLong(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(!isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (!isAnc_Closed(cursor.getString(2))) { count++; } } @@ -402,22 +399,23 @@ public static long getProcessedVisits(String dateStart, String dateEnd) { } return count; } + @RequiresApi(api = Build.VERSION_CODES.O) public static int getWomanWithDangerSing(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(hasDangerSign(cursor.getString(2))&& !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (hasDangerSign(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { count++; } } From 8702e6b9159b80ce739756e86fd67d9fbe47692c Mon Sep 17 00:00:00 2001 From: hilpitome Date: Wed, 22 Nov 2023 14:31:12 +0300 Subject: [PATCH 4/8] Revert "fix formating" This reverts commit ac9193791ce315c8459644fdbc43705913588297. --- .../repository/DashboardRepository.java | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java index 06075f0..d8f321f 100644 --- a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java +++ b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java @@ -100,22 +100,22 @@ public static int getWomanLateVisits(LocalDate datetoday) { String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); - DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate d1=null; - if(next_contact_date.charAt(0)=='-'){ - d1 = LocalDate.parse(next_contact_date.substring(1), df); - } - else{ - d1 = LocalDate.parse(next_contact_date, df); - } + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); + LocalDate d1=null; + if(next_contact_date.charAt(0)=='-'){ + d1 = LocalDate.parse(next_contact_date.substring(1), df); + } + else{ + d1 = LocalDate.parse(next_contact_date, df); + } - if(datetoday.isAfter(d1)) { + if(datetoday.isAfter(d1)) { // if(datetoday.isEqual(d1)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - count++;} - }else{ + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ + count++;} + }else{ - } + } } catch (DateTimeParseException e){ Timber.e(e); } From 90b7ab12751510ae24ee21f6b8fdca14d0454c47 Mon Sep 17 00:00:00 2001 From: hilpitome Date: Wed, 22 Nov 2023 14:34:31 +0300 Subject: [PATCH 5/8] fix formating --- .../repository/DashboardRepository.java | 652 +++++++++--------- 1 file changed, 336 insertions(+), 316 deletions(-) diff --git a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java index d8f321f..69409b8 100644 --- a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java +++ b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java @@ -83,6 +83,7 @@ public static int getDueContactDash(LocalDate datetoday) { } return count; } + @RequiresApi(api = Build.VERSION_CODES.O) public static int getWomanLateVisits(LocalDate datetoday) { @@ -93,71 +94,74 @@ public static int getWomanLateVisits(LocalDate datetoday) { // long count = statement.simpleQueryForLong(); // return count; String query = "SELECT * FROM " + getRegisterQueryProvider().getDetailsTable(); - Cursor cursor = db.rawQuery(query, null); - int count=0; - while (cursor.moveToNext()){ - try{ - String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); - - - DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate d1=null; - if(next_contact_date.charAt(0)=='-'){ - d1 = LocalDate.parse(next_contact_date.substring(1), df); - } - else{ - d1 = LocalDate.parse(next_contact_date, df); - } - - if(datetoday.isAfter(d1)) { + Cursor cursor = db.rawQuery(query, null); + int count = 0; + while (cursor.moveToNext()) { + try { + String next_contact_date = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); + + + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); + LocalDate d1 = null; + if (next_contact_date.charAt(0) == '-') { + d1 = LocalDate.parse(next_contact_date.substring(1), df); + } else { + d1 = LocalDate.parse(next_contact_date, df); + } + + if (datetoday.isAfter(d1)) { // if(datetoday.isEqual(d1)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - count++;} - }else{ + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + count++; + } + } else { - } - } catch (DateTimeParseException e){ - Timber.e(e); - } + } + } catch (DateTimeParseException e) { + Timber.e(e); + } } return count; } + @RequiresApi(api = Build.VERSION_CODES.O) - public static int getExpectedDeliveries (String dateStart, String dateEnd){ + public static int getExpectedDeliveries(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); String query = "SELECT * FROM " + getRegisterQueryProvider().getDetailsTable(); - Cursor cursor = db.rawQuery(query, null); - int count=0; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - String edd=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD)); - - if (!"0".equals(edd) && edd!= null){ - LocalDate d=LocalDate.parse(edd); - if(d.isAfter(start) && d.isBefore(end)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - count++; + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + String edd = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD)); + + if (!"0".equals(edd) && edd != null) { + LocalDate d = LocalDate.parse(edd); + if (d.isAfter(start) && d.isBefore(end)) { + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + count++; + } } - }} + } } return count; } + private static boolean isAnc_Closed(String base_entity_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_EC_CLIENT+ " WHERE base_entity_id='" +base_entity_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ - if (cursor.getString(cursor.getColumnIndex("date_removed"))!=null){ - return true; + String query = "SELECT * FROM " + TABLE_EC_CLIENT + " WHERE base_entity_id='" + base_entity_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { + if (cursor.getString(cursor.getColumnIndex("date_removed")) != null) { + return true; } } @@ -169,41 +173,42 @@ public static int getWomanReferred(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isReferred(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ - count++; - } - } - } - - } + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isReferred(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { + count++; + } + } + } + + } return count; } + @RequiresApi(api = Build.VERSION_CODES.O) public static int getWomanVaccinated(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isVaccinatedToday(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isVaccinatedToday(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { count++; } } @@ -216,9 +221,9 @@ public static int getWomanVaccinated(String dateStart, String dateEnd) { private static boolean isVaccinatedToday(String woman_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '"+woman_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '" + woman_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { try { if (cursor.getString(3).equals("tt1_date")) { @@ -245,17 +250,17 @@ public static int getWomanAccompaniedWithPartner(String dateStart, String dateEn SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isAccompanied(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isAccompanied(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { count++; } } @@ -264,22 +269,23 @@ public static int getWomanAccompaniedWithPartner(String dateStart, String dateEn } return count; } + @RequiresApi(api = Build.VERSION_CODES.O) public static int getWomanReceivedDewormingPills(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isDewormingPerfomed(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isDewormingPerfomed(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { count++; } } @@ -292,9 +298,9 @@ public static int getWomanReceivedDewormingPills(String dateStart, String dateEn private static boolean isDewormingPerfomed(String woman_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '"+woman_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '" + woman_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { try { if (cursor.getString(3).equals("deworming_performed")) { @@ -319,9 +325,9 @@ private static boolean isDewormingPerfomed(String woman_id) { private static boolean isAccompanied(String woman_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '"+woman_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '" + woman_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { try { if (cursor.getString(3).equals("accompanied_by_partner")) { @@ -331,9 +337,8 @@ private static boolean isAccompanied(String woman_id) { if (val.get(VALUE).toString().equals("yes")) { return true; - } - else { - return false; + } else { + return false; } } } catch (JSONException e) { @@ -424,41 +429,43 @@ public static int getWomanWithDangerSing(String dateStart, String dateEnd) { } return count; } - public static boolean hasDangerSign(String woman_id){ + + public static boolean hasDangerSign(String woman_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + getRegisterQueryProvider().getDetailsTable()+" WHERE id= '"+woman_id+"'"; - Cursor cursor = db.rawQuery(query, null); + String query = "SELECT * FROM " + getRegisterQueryProvider().getDetailsTable() + " WHERE id= '" + woman_id + "'"; + Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ - String r=cursor.getString(18); - if (!"0".equals(r) && r!= null){ - return true; - }else{ - return false; - } + while (cursor.moveToNext()) { + String r = cursor.getString(18); + if (!"0".equals(r) && r != null) { + return true; + } else { + return false; + } } return false; } + @RequiresApi(api = Build.VERSION_CODES.O) public static int getWomanWithSyphilisPositive(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isSyphilisPositive(cursor.getString(2))&& !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isSyphilisPositive(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { count++; } } @@ -467,16 +474,17 @@ public static int getWomanWithSyphilisPositive(String dateStart, String dateEnd) } return count; } + private static boolean isSyphilisPositive(String woman_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '"+woman_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE base_entity_id= '" + woman_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { - if (cursor.getString(3).equals("syphilis_positive") && cursor.getString(4).equals("1")) { - return true; - } + if (cursor.getString(3).equals("syphilis_positive") && cursor.getString(4).equals("1")) { + return true; + } } @@ -484,44 +492,44 @@ private static boolean isSyphilisPositive(String woman_id) { } @RequiresApi(api = Build.VERSION_CODES.O) - public static int getWomanInParticularAge(String dateStart, String dateEnd,int age) { + public static int getWomanInParticularAge(String dateStart, String dateEnd, int age) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); String query = "SELECT * FROM ec_details"; - Cursor cursor = db.rawQuery(query, null); - int count=0; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - Long dt=Long.parseLong(cursor.getString(cursor.getColumnIndex("event_date"))); + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + Long dt = Long.parseLong(cursor.getString(cursor.getColumnIndex("event_date"))); DateFormat simple = new SimpleDateFormat("yyyy-MM-dd"); Date result = new Date(dt); - LocalDate d=LocalDate.parse(simple.format(result)); + LocalDate d = LocalDate.parse(simple.format(result)); - if(d.isAfter(start) && d.isBefore(end)) { + if (d.isAfter(start) && d.isBefore(end)) { - if(cursor.getString(1).equals("age_calculated") ) { - int ag = getWomanAge(cursor.getString(cursor.getColumnIndex("base_entity_id"))); - Log.i("TEST1", String.valueOf(ag)+ "getWomanInParticularAge: "+cursor.getString(cursor.getColumnIndex("base_entity_id"))); - if (age == 19) { - if (ag < 20 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { - count++; - } - } else if (age == 30) { + if (cursor.getString(1).equals("age_calculated")) { + int ag = getWomanAge(cursor.getString(cursor.getColumnIndex("base_entity_id"))); + Log.i("TEST1", String.valueOf(ag) + "getWomanInParticularAge: " + cursor.getString(cursor.getColumnIndex("base_entity_id"))); + if (age == 19) { + if (ag < 20 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + count++; + } + } else if (age == 30) { - if ( ag >= 20 && ag < 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { - count++; - } + if (ag >= 20 && ag < 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + count++; + } - } else { - if (ag >= 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { - count++; - } - } - } + } else { + if (ag >= 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + count++; + } + } + } } @@ -529,65 +537,67 @@ public static int getWomanInParticularAge(String dateStart, String dateEnd,int a } return count; } + protected static Repository getMasterRepository() { return DrishtiApplication.getInstance().getRepository(); } + private static RegisterQueryProvider getRegisterQueryProvider() { return AncLibrary.getInstance().getRegisterQueryProvider(); } + @RequiresApi(api = Build.VERSION_CODES.O) public static List getWomanProfileDetails(LocalDate datetoday) { Cursor cursor = null; - List clientList=new ArrayList<>(); + List clientList = new ArrayList<>(); try { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); String query = "SELECT " + StringUtils.join(projection, ",") + " FROM " + getRegisterQueryProvider().getDemographicTable() + " join " + getRegisterQueryProvider().getDetailsTable() + - " on " + getRegisterQueryProvider().getDemographicTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID + " = " + getRegisterQueryProvider().getDetailsTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID ; + " on " + getRegisterQueryProvider().getDemographicTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID + " = " + getRegisterQueryProvider().getDetailsTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID; // + " WHERE " + getRegisterQueryProvider().getDetailsTable() + "." + DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE + " = ?"; // cursor = db.rawQuery(query, new String[]{baseEntityId});?? cursor = db.rawQuery(query, null); - if (cursor != null ) { + if (cursor != null) { - while (cursor.moveToNext()){ - CustomClient client=new CustomClient(); - String next_contact_date=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); + while (cursor.moveToNext()) { + CustomClient client = new CustomClient(); + String next_contact_date = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE)); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate d1=null; - if(next_contact_date.charAt(0)=='-'){ + LocalDate d1 = null; + if (next_contact_date.charAt(0) == '-') { d1 = LocalDate.parse(next_contact_date.substring(1), df); - } - else{ + } else { d1 = LocalDate.parse(next_contact_date, df); } // if(datetoday.isEqual(d1) || datetoday.isAfter(d1)) { - if(datetoday.isAfter(d1)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ - - - - client.setFirstName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.FIRST_NAME))); - client.setLastName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.LAST_NAME))); - client.setAge(String.valueOf(calculateAge(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.DOB))))); - client.setGa(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD))); - client.setRegistrationId(cursor.getString(cursor.getColumnIndex("register_id"))); - client.setNextContactDate(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE))); - String r=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.RED_FLAG_COUNT)); - String red= r == null? "0": r; - String y=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.YELLOW_FLAG_COUNT)); - String yellow= y == null? "0": y; - client.setAttentionFlag(Integer.parseInt(red)+ Integer.parseInt(yellow)); - client.setBaseIntityId(cursor.getString(cursor.getColumnIndex("base_entity_id"))); - clientList.add(client) ; + if (datetoday.isAfter(d1)) { + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + + + client.setFirstName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.FIRST_NAME))); + client.setLastName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.LAST_NAME))); + client.setAge(String.valueOf(calculateAge(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.DOB))))); + client.setGa(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD))); + client.setRegistrationId(cursor.getString(cursor.getColumnIndex("register_id"))); + client.setNextContactDate(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE))); + String r = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.RED_FLAG_COUNT)); + String red = r == null ? "0" : r; + String y = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.YELLOW_FLAG_COUNT)); + String yellow = y == null ? "0" : y; + client.setAttentionFlag(Integer.parseInt(red) + Integer.parseInt(yellow)); + client.setBaseIntityId(cursor.getString(cursor.getColumnIndex("base_entity_id"))); + clientList.add(client); } - }else{} + } else { + } + } } - } return clientList; } catch (Exception e) { @@ -599,29 +609,30 @@ public static List getWomanProfileDetails(LocalDate datetoday) { } return null; } + @RequiresApi(api = Build.VERSION_CODES.O) - public static ListgetProcessedVisitsDetails(String dateStart, String dateEnd) { + public static List getProcessedVisitsDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); // String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT + " WHERE " + KEY + "= 'contact_date' AND " +VALUE+ "='"+datet+"'"; // Cursor cursor = db.rawQuery(query, null); - List clientList=new ArrayList<>(); + List clientList = new ArrayList<>(); // // while (cursor.moveToNext()){ // clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); // } - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(!isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (!isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } @@ -631,22 +642,23 @@ public static List getWomanProfileDetails(LocalDate datetoday) { return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) public static List getWomanReferredDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isReferred(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isReferred(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } @@ -657,22 +669,22 @@ public static List getWomanReferredDetails(String dateStart, Strin } @RequiresApi(api = Build.VERSION_CODES.O) - public static List getWomanWithDangerSingDetails(String dateStart, String dateEnd) { + public static List getWomanWithDangerSingDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(hasDangerSign(cursor.getString(2))&& !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (hasDangerSign(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } @@ -682,23 +694,24 @@ public static List getWomanWithDangerSingDetails(String dateStar } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) public static List getWomanAccompaniedWithPartnerDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isAccompanied(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isAccompanied(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } @@ -707,23 +720,24 @@ public static List getWomanAccompaniedWithPartnerDetails(String da } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) public static List getWomanReceivedDewormingPillsDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isDewormingPerfomed(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isDewormingPerfomed(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } @@ -732,70 +746,71 @@ public static List getWomanReceivedDewormingPillsDetails(String da } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) - public static List getWomanInParticularAgeDetails(String dateStart, String dateEnd,int age) { + public static List getWomanInParticularAgeDetails(String dateStart, String dateEnd, int age) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); String query = "SELECT * FROM ec_details"; - Cursor cursor = db.rawQuery(query, null); + Cursor cursor = db.rawQuery(query, null); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); + LocalDate start = LocalDate.parse(dateStart, df); - List clientList=new ArrayList<>(); - LocalDate end= LocalDate.parse(dateEnd, df); - while (cursor.moveToNext()){ - Long dt=Long.parseLong(cursor.getString(cursor.getColumnIndex("event_date"))); + List clientList = new ArrayList<>(); + LocalDate end = LocalDate.parse(dateEnd, df); + while (cursor.moveToNext()) { + Long dt = Long.parseLong(cursor.getString(cursor.getColumnIndex("event_date"))); DateFormat simple = new SimpleDateFormat("yyyy-MM-dd"); Date result = new Date(dt); - LocalDate d=LocalDate.parse(simple.format(result)); - if(d.isAfter(start) && d.isBefore(end)) { - if(cursor.getString(1).equals("age_calculated") ) { + LocalDate d = LocalDate.parse(simple.format(result)); + if (d.isAfter(start) && d.isBefore(end)) { + if (cursor.getString(1).equals("age_calculated")) { int ag = getWomanAge(cursor.getString(cursor.getColumnIndex("base_entity_id"))); - Log.i("TEST1", String.valueOf(ag)+ "getWomanInParticularAge: "+cursor.getString(cursor.getColumnIndex("base_entity_id"))); + Log.i("TEST1", String.valueOf(ag) + "getWomanInParticularAge: " + cursor.getString(cursor.getColumnIndex("base_entity_id"))); if (age == 19) { if (ag < 20 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } else if (age == 30) { - if ( ag >= 20 && ag < 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + if (ag >= 20 && ag < 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } else { - if (ag >= 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + if (ag >= 30 && !isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } } - } } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) - public static List getWomanVaccinatedDetails(String dateStart, String dateEnd) { + public static List getWomanVaccinatedDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isVaccinatedToday(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isVaccinatedToday(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } @@ -804,23 +819,24 @@ public static List getWomanVaccinatedDetails(String dateStart, St } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) public static List getWomanWithSyphilisPositiveDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT ; - Cursor cursor = db.rawQuery(query, null); - int count=0; + String query = "SELECT * FROM " + TABLE_PREVIOUS_CONTACT; + Cursor cursor = db.rawQuery(query, null); + int count = 0; DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - if (cursor.getString(3).equals("contact_date")){ - LocalDate d=LocalDate.parse(cursor.getString(4)); - if(d.isAfter(start) && d.isBefore(end)) { - if(isSyphilisPositive(cursor.getString(2))&& !isAnc_Closed(cursor.getString(2))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + if (cursor.getString(3).equals("contact_date")) { + LocalDate d = LocalDate.parse(cursor.getString(4)); + if (d.isAfter(start) && d.isBefore(end)) { + if (isSyphilisPositive(cursor.getString(2)) && !isAnc_Closed(cursor.getString(2))) { clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } } @@ -829,44 +845,47 @@ public static List getWomanWithSyphilisPositiveDetails(String date } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) - public static List getExpectedDeliveriesDetails (String dateStart, String dateEnd){ + public static List getExpectedDeliveriesDetails(String dateStart, String dateEnd) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); String query = "SELECT * FROM " + getRegisterQueryProvider().getDetailsTable(); - Cursor cursor = db.rawQuery(query, null); + Cursor cursor = db.rawQuery(query, null); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-d"); - LocalDate start= LocalDate.parse(dateStart, df); - LocalDate end= LocalDate.parse(dateEnd, df); - Log.i("TESTing", "getExpectedDeliveriesDetails: "+start); - Log.i("TESTing", "getExpectedDeliveriesDetails: "+end); - List clientList=new ArrayList<>(); - while (cursor.moveToNext()){ - String edd=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD)); - - if (!"0".equals(edd) && edd!= null){ - LocalDate d=LocalDate.parse(edd); - if(d.isAfter(start) && d.isBefore(end)) { - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ + LocalDate start = LocalDate.parse(dateStart, df); + LocalDate end = LocalDate.parse(dateEnd, df); + Log.i("TESTing", "getExpectedDeliveriesDetails: " + start); + Log.i("TESTing", "getExpectedDeliveriesDetails: " + end); + List clientList = new ArrayList<>(); + while (cursor.moveToNext()) { + String edd = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD)); - clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); + if (!"0".equals(edd) && edd != null) { + LocalDate d = LocalDate.parse(edd); + if (d.isAfter(start) && d.isBefore(end)) { + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { + + clientList.add(getDetailsList(cursor.getString(cursor.getColumnIndex("base_entity_id")))); } - }} + } + } } return clientList; } + @RequiresApi(api = Build.VERSION_CODES.O) private static int getWomanAge(String base_entity_id) { SQLiteDatabase db = getMasterRepository().getReadableDatabase(); - int age=25; - String query = "SELECT * FROM " + TABLE_EC_CLIENT+ " WHERE base_entity_id='" +base_entity_id+"'"; - Cursor cursor = db.rawQuery(query, null); - while (cursor.moveToNext()){ - age= calculateAge(cursor.getString(cursor.getColumnIndex("dob"))); + int age = 25; + String query = "SELECT * FROM " + TABLE_EC_CLIENT + " WHERE base_entity_id='" + base_entity_id + "'"; + Cursor cursor = db.rawQuery(query, null); + while (cursor.moveToNext()) { + age = calculateAge(cursor.getString(cursor.getColumnIndex("dob"))); - } + } return age; } @@ -883,27 +902,27 @@ public static CustomClient getDetailsList(String baseEntityId) { " on " + getRegisterQueryProvider().getDemographicTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID + " = " + getRegisterQueryProvider().getDetailsTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID + " WHERE " + getRegisterQueryProvider().getDemographicTable() + "." + DBConstantsUtils.KeyUtils.BASE_ENTITY_ID + " = ?"; cursor = db.rawQuery(query, new String[]{baseEntityId}); - CustomClient client=new CustomClient(); - if (cursor != null ) { + CustomClient client = new CustomClient(); + if (cursor != null) { - while (cursor.moveToNext()){ - if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))){ + while (cursor.moveToNext()) { + if (!isAnc_Closed(cursor.getString(cursor.getColumnIndex("base_entity_id")))) { - client.setFirstName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.FIRST_NAME))); - client.setLastName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.LAST_NAME))); - client.setAge(String.valueOf(calculateAge(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.DOB))))); - client.setGa(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD))); - client.setRegistrationId(cursor.getString(cursor.getColumnIndex("register_id"))); - client.setNextContactDate(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE))); - String r=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.RED_FLAG_COUNT)); - String red= r == null? "0": r; - String y=cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.YELLOW_FLAG_COUNT)); - String yellow= y == null? "0": y; - client.setAttentionFlag(Integer.parseInt(red)+ Integer.parseInt(yellow)); - client.setBaseIntityId(cursor.getString(cursor.getColumnIndex("base_entity_id"))); + client.setFirstName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.FIRST_NAME))); + client.setLastName(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.LAST_NAME))); + client.setAge(String.valueOf(calculateAge(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.DOB))))); + client.setGa(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.EDD))); + client.setRegistrationId(cursor.getString(cursor.getColumnIndex("register_id"))); + client.setNextContactDate(cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.NEXT_CONTACT_DATE))); + String r = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.RED_FLAG_COUNT)); + String red = r == null ? "0" : r; + String y = cursor.getString(cursor.getColumnIndex(DBConstantsUtils.KeyUtils.YELLOW_FLAG_COUNT)); + String yellow = y == null ? "0" : y; + client.setAttentionFlag(Integer.parseInt(red) + Integer.parseInt(yellow)); + client.setBaseIntityId(cursor.getString(cursor.getColumnIndex("base_entity_id"))); - } + } } } @@ -918,11 +937,12 @@ public static CustomClient getDetailsList(String baseEntityId) { } return null; } + @RequiresApi(api = Build.VERSION_CODES.O) private static int calculateAge(String birthDate) { - LocalDate currentDate = LocalDate.now(); + LocalDate currentDate = LocalDate.now(); if ((birthDate != null) && (currentDate != null)) { - return currentDate.getYear()-Integer.valueOf(birthDate.split("-", 0)[0]); + return currentDate.getYear() - Integer.valueOf(birthDate.split("-", 0)[0]); } else { return 0; } From 5b686cfb449434b07d68e159fd857d595a8d41de Mon Sep 17 00:00:00 2001 From: hilpitome Date: Tue, 5 Dec 2023 09:01:57 +0300 Subject: [PATCH 6/8] init moving anc tests relevance rules --- opensrp-anc/build.gradle | 6 +- .../sub_form/tests_hiv_sub_form.json | 14 +- .../tests_rubella_tests_sub_form.json | 8 +- .../sub_form/tests_ultrasound_sub_form.json | 2 +- .../sub_form/tests_urine_sub_form.json | 28 +- .../rule/hiv_tests_relevance_rules.yaml | 133 +++++++ .../rule/rubella_tests_relevance_rules.yml | 36 ++ .../assets/rule/tests_relevance_rules.yml | 351 +----------------- .../rule/ultrasound_tests_relevance_rules.yml | 14 + .../rule/urine_tests_relevance_rules.yml | 155 ++++++++ .../repository/DashboardRepository.java | 1 - reference-app/build.gradle | 6 +- 12 files changed, 371 insertions(+), 383 deletions(-) create mode 100644 opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yaml create mode 100644 opensrp-anc/src/main/assets/rule/rubella_tests_relevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/ultrasound_tests_relevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/urine_tests_relevance_rules.yml diff --git a/opensrp-anc/build.gradle b/opensrp-anc/build.gradle index e1224fd..90752c0 100644 --- a/opensrp-anc/build.gradle +++ b/opensrp-anc/build.gradle @@ -183,7 +183,7 @@ dependencies { implementation 'org.smartregister:opensrp-client-utils:0.0.6-SNAPSHOT' implementation 'org.smartregister:opensrp-client-materialedittext:2.1.6-SNAPSHOT' - implementation('rw.ths:opensrp-client-native-form:1.0-local-release') { + implementation('org.smartregister:opensrp-client-native-form:3.1.2-SNAPSHOT@aar') { transitive = true exclude group: 'com.android.support', module: 'recyclerview-v7' exclude group: 'com.android.support', module: 'appcompat-v7' @@ -210,7 +210,7 @@ dependencies { exclude group: 'com.ibm.fhir', module: 'fhir-model' } - implementation('rw.ths.corelibary:corelibary:1.5-local-debug') { + implementation('org.smartregister:opensrp-client-core:6.1.2-SNAPSHOT@aar') { transitive = true exclude group: 'com.github.bmelnychuk', module: 'atv' exclude group: 'com.google.guava', module: 'guava' @@ -243,7 +243,7 @@ dependencies { // exclude group: 'org.smartregister', module: 'android-p2p-sync' // } - api("rw.ths:p2p-sync:1.0-local-release") { + api("org.smartregister:android-p2p-sync:0.4.0-DEV-SNAPSHOT") { transitive = true exclude group: 'org.smartregister', module: 'opensrp-client-core' exclude group: 'com.android.support', module: 'appcompat-v7' diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json index b43f38c..5b06dee 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json @@ -102,7 +102,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_hiv_tests_relevance_rules.yml" } } } @@ -118,7 +118,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } } @@ -151,7 +151,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } }, @@ -180,7 +180,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } }, @@ -230,7 +230,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } } @@ -299,7 +299,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } } @@ -317,7 +317,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_rubella_tests_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_rubella_tests_sub_form.json index 2b0865e..2c86fb7 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_rubella_tests_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_rubella_tests_sub_form.json @@ -94,7 +94,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rubella_tests_relevance_rules.yml" } } } @@ -147,7 +147,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rubella_tests_relevance_rules.yml" } } }, @@ -177,7 +177,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rubella_tests_relevance_rules.yml" } } } @@ -213,7 +213,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rubella_tests_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_ultrasound_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_ultrasound_sub_form.json index 62ab6d7..249a3c2 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_ultrasound_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_ultrasound_sub_form.json @@ -110,7 +110,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "ultrasound_tests_relevance_rules.yml" } } }, diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_urine_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_urine_sub_form.json index 3103ae4..bde5443 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_urine_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_urine_sub_form.json @@ -89,7 +89,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } }, @@ -117,7 +117,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -135,7 +135,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } }, @@ -172,7 +172,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } }, @@ -227,7 +227,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } }, @@ -285,7 +285,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -323,7 +323,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -385,7 +385,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -447,7 +447,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -509,7 +509,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -571,7 +571,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -603,7 +603,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -637,7 +637,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } @@ -655,7 +655,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "urine_tests_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yaml b/opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yaml new file mode 100644 index 0000000..7922f23 --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yaml @@ -0,0 +1,133 @@ +--- +name: step1_hiv_test_date +description: Date that the ultrasound was done. +priority: 1 +condition: "step1_hiv_test_status != '' && step1_hiv_test_status == 'done_earlier' " +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_date +description: Date that the ultrasound was done. +priority: 1 +condition: "step2_hiv_test_status != '' && step2_hiv_test_status == 'done_earlier' " +actions: + - "isRelevant = true" +--- +name: step1_hiv_test_notdone +description: HIV not done +priority: 1 +condition: "step1_hiv_test_status != '' && step1_hiv_test_status == 'not_done' " +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_notdone +description: HIV not done. +priority: 1 +condition: "step2_hiv_test_status != '' && step2_hiv_test_status == 'not_done' " +actions: + - "isRelevant = true" +--- +name: step1_hiv_test_notdone_other +description: Reason +priority: 1 +condition: "!step1_hiv_test_notdone.isEmpty() && step1_hiv_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_notdone_other +description: Reason +priority: 1 +condition: "!step2_hiv_test_notdone.isEmpty() && step2_hiv_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step1_hiv_inconclusive_toaster +description: HIV test resupt +priority: 1 +condition: "step1_hiv_test_result != '' && step1_hiv_test_result == 'inconclusive'" +actions: + - "isRelevant = true" +--- +name: step2_hiv_inconclusive_toaster +description: HIV test resupt +priority: 1 +condition: "step2_hiv_test_result != '' && step2_hiv_test_result == 'inconclusive'" +actions: + - "isRelevant = true" +--- +name: step1_hiv_test_result +description: HIV test result +priority: 1 +condition: "step1_hiv_test_status != '' && (step1_hiv_test_status == 'done_today' || step1_hiv_test_status == 'done_earlier') " +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_result +description: HIV test result +priority: 1 +condition: "step2_hiv_test_status != '' && (step2_hiv_test_status == 'done_today' || step2_hiv_test_status == 'done_earlier') " +actions: + - "isRelevant = true" +--- +name: step1_hiv_positive_toaster +description: HIV positive counseling +priority: 1 +condition: "(step1_hiv_positive == 1)" +actions: + - "isRelevant = true" +--- +name: step2_hiv_positive_toaster +description: HIV positive counseling +priority: 1 +condition: "(step2_hiv_positive == 1)" +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_partner_date +description: Partner HIV test date +priority: 1 +condition: "(step2_hiv_test_partner_status != '' && step2_hiv_test_partner_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_partner_result +description: partner HIV result +priority: 1 +condition: "step2_hiv_test_partner_status != '' && (step2_hiv_test_partner_status == 'done_today' || step2_hiv_test_partner_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step2_hiv_risk_toaster +description: hiv_risk_toaster +priority: 1 +condition: "step2_hiv_risk == 1" +actions: + - "isRelevant = true" +--- +name: step1_hiv_test_scheduled_date +description: hepc_test_scheduled_date +priority: 1 +condition: "step1_hiv_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_scheduled_date +description: hiv_test_scheduled_date +priority: 1 +condition: "step2_hiv_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step1_hiv_test_partner_scheduled_date +description: hiv_test_partner_scheduled_date +priority: 1 +condition: "step1_hiv_test_partner_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_hiv_test_partner_scheduled_date +description: hiv_test_partner_scheduled_date +priority: 1 +condition: "step2_hiv_test_partner_status == 'ordered'" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/rubella_tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/rubella_tests_relevance_rules.yml new file mode 100644 index 0000000..4b533dd --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/rubella_tests_relevance_rules.yml @@ -0,0 +1,36 @@ + +--- +name: step2_rubella_test_date +description: Rubella test date. +priority: 1 +condition: "step2_rubella_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step2_rubella_test_notdone +description: Rubella test not done +priority: 1 +condition: "step2_rubella_test_status != '' && step2_rubella_test_status == 'not_done' " +actions: + - "isRelevant = true" +--- +name: step2_herps_test_notdone_other +description: Reason +priority: 1 +condition: "!step2_rubella_test_notdone.isEmpty() && step2_rubella_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step2_rubella_test_result +description: Rubella test result +priority: 1 +condition: "step2_rubella_test_status != '' && (step2_rubella_test_status == 'done_today' || step2_rubella_test_status == 'done_earlier') " +actions: + - "isRelevant = true" +--- +name: step2_rubella_test_type +description: Rubellatest result +priority: 1 +condition: "step2_rubella_test_status != '' && (step2_rubella_test_status == 'done_today' || step2_rubella_test_status == 'done_earlier') " +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml index e43cee6..c7660c9 100644 --- a/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml +++ b/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml @@ -1,109 +1,4 @@ --- -name: step1_hiv_test_date -description: Date that the ultrasound was done. -priority: 1 -condition: "step1_hiv_test_status != '' && step1_hiv_test_status == 'done_earlier' " -actions: -- "isRelevant = true" ---- -name: step2_hiv_test_date -description: Date that the ultrasound was done. -priority: 1 -condition: "step2_hiv_test_status != '' && step2_hiv_test_status == 'done_earlier' " -actions: -- "isRelevant = true" ---- -name: step1_hiv_test_notdone -description: HIV not done -priority: 1 -condition: "step1_hiv_test_status != '' && step1_hiv_test_status == 'not_done' " -actions: -- "isRelevant = true" ---- -name: step2_hiv_test_notdone -description: HIV not done. -priority: 1 -condition: "step2_hiv_test_status != '' && step2_hiv_test_status == 'not_done' " -actions: -- "isRelevant = true" ---- -name: step1_hiv_test_notdone_other -description: Reason -priority: 1 -condition: "!step1_hiv_test_notdone.isEmpty() && step1_hiv_test_notdone.contains('other')" -actions: -- "isRelevant = true" ---- -name: step2_hiv_test_notdone_other -description: Reason -priority: 1 -condition: "!step2_hiv_test_notdone.isEmpty() && step2_hiv_test_notdone.contains('other')" -actions: -- "isRelevant = true" ---- -name: step1_hiv_inconclusive_toaster -description: HIV test resupt -priority: 1 -condition: "step1_hiv_test_result != '' && step1_hiv_test_result == 'inconclusive'" -actions: -- "isRelevant = true" ---- -name: step2_hiv_inconclusive_toaster -description: HIV test resupt -priority: 1 -condition: "step2_hiv_test_result != '' && step2_hiv_test_result == 'inconclusive'" -actions: -- "isRelevant = true" ---- -name: step1_hiv_test_result -description: HIV test result -priority: 1 -condition: "step1_hiv_test_status != '' && (step1_hiv_test_status == 'done_today' || step1_hiv_test_status == 'done_earlier') " -actions: -- "isRelevant = true" ---- -name: step2_hiv_test_result -description: HIV test result -priority: 1 -condition: "step2_hiv_test_status != '' && (step2_hiv_test_status == 'done_today' || step2_hiv_test_status == 'done_earlier') " -actions: -- "isRelevant = true" ---- -name: step1_hiv_positive_toaster -description: HIV positive counseling -priority: 1 -condition: "(step1_hiv_positive == 1)" -actions: -- "isRelevant = true" ---- -name: step2_hiv_positive_toaster -description: HIV positive counseling -priority: 1 -condition: "(step2_hiv_positive == 1)" -actions: -- "isRelevant = true" ---- -name: step2_hiv_test_partner_date -description: Partner HIV test date -priority: 1 -condition: "(step2_hiv_test_partner_status != '' && step2_hiv_test_partner_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step2_hiv_test_partner_result -description: partner HIV result -priority: 1 -condition: "step2_hiv_test_partner_status != '' && (step2_hiv_test_partner_status == 'done_today' || step2_hiv_test_partner_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step2_hiv_risk_toaster -description: hiv_risk_toaster -priority: 1 -condition: "step2_hiv_risk == 1" -actions: -- "isRelevant = true" ---- name: step1_hepb_test_notdone description: Reason priority: 1 @@ -481,146 +376,7 @@ priority: 1 condition: "step2_syphilis_positive == 1" actions: - "isRelevant = true" ---- -name: step1_urine_test_notdone -description: Reason -priority: 1 -condition: "step1_urine_test_status == 'not_done'" -actions: -- "isRelevant = true" ---- -name: step2_urine_test_notdone -description: Reason -priority: 1 -condition: "step2_urine_test_status == 'not_done'" -actions: -- "isRelevant = true" ---- -name: step1_urine_test_notdone_other -description: Specify -priority: 1 -condition: "step1_urine_test_notdone.contains('other')" -actions: -- "isRelevant = true" ---- -name: step2_urine_test_notdone_other -description: Specify -priority: 1 -condition: "step2_urine_test_notdone.contains('other')" -actions: -- "isRelevant = true" ---- -name: step1_urine_test_date -description: Urine test date -priority: 1 -condition: "step1_urine_test_status == 'done_earlier'" -actions: -- "isRelevant = true" ---- -name: step2_urine_test_date -description: Urine test date -priority: 1 -condition: "step2_urine_test_status == 'done_earlier'" -actions: -- "isRelevant = true" ---- -name: step1_urine_test_type -description: Urine test type -priority: 1 -condition: "step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier' || step1_urine_test_status == 'ordered'" -actions: -- "isRelevant = true" ---- -name: step2_urine_test_type -description: Urine test type -priority: 1 -condition: "step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier' || step2_urine_test_status == 'ordered'" -actions: -- "isRelevant = true" ---- -name: step1_urine_culture -description: Midstream urine culture (recommended) -priority: 1 -condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('midstream_urine_culture')" -actions: -- "isRelevant = true" ---- -name: step2_urine_culture -description: Midstream urine culture (recommended) -priority: 1 -condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('midstream_urine_culture')" -actions: -- "isRelevant = true" ---- -name: step1_urine_gram_stain -description: Midstream urine Gram-staining -priority: 1 -condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('midstream_urine_gram')" -actions: -- "isRelevant = true" ---- -name: step2_urine_gram_stain -description: Midstream urine Gram-staining -priority: 1 -condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('midstream_urine_gram')" -actions: -- "isRelevant = true" ---- -name: step1_urine_nitrites -description: Urine dipstick result - nitrites -priority: 1 -condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step2_urine_nitrites -description: Urine dipstick result - nitrites -priority: 1 -condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step1_urine_leukocytes -description: Urine dipstick result - leukocytes -priority: 1 -condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step2_urine_leukocytes -description: Urine dipstick result - leukocytes -priority: 1 -condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step1_urine_protein -description: Urine dipstick result - protein -priority: 1 -condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step2_urine_protein -description: Urine dipstick result - protein -priority: 1 -condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step1_urine_glucose -description: Urine dipstick result - glucose -priority: 1 -condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" ---- -name: step2_urine_glucose -description: Urine dipstick result - glucose -priority: 1 -condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" -actions: -- "isRelevant = true" + --- name: step1_gdm_risk_toaster description: Gestational diabetes mellitus (GDM) risk counseling @@ -650,20 +406,6 @@ condition: "step2_asb_positive == 1" actions: - "isRelevant = true" --- -name: step1_gbs_agent_note -description: gbs_agent_note -priority: 1 -condition: "step1_urine_culture == 'positive_gbs'" -actions: -- "isRelevant = true" ---- -name: step2_gbs_agent_note -description: gbs_agent_note -priority: 1 -condition: "step2_urine_culture == 'positive_gbs'" -actions: -- "isRelevant = true" ---- name: step2_glucose_test_date description: Blood glucose test date. priority: 1 @@ -671,13 +413,6 @@ condition: "step2_glucose_test_status == 'done_earlier'" actions: - "isRelevant = true" --- -name: step2_rubella_test_date -description: Rubella test date. -priority: 1 -condition: "step2_rubella_test_status == 'done_earlier'" -actions: - - "isRelevant = true" ---- name: step2_glucose_test_type description: Blood glucose test. priority: 1 @@ -1175,34 +910,6 @@ condition: "step2_herps_test_status != '' && (step2_herps_test_status == 'done_t actions: - "isRelevant = true" --- -name: step2_rubella_test_notdone -description: Rubella test not done -priority: 1 -condition: "step2_rubella_test_status != '' && step2_rubella_test_status == 'not_done' " -actions: - - "isRelevant = true" ---- -name: step2_herps_test_notdone_other -description: Reason -priority: 1 -condition: "!step2_rubella_test_notdone.isEmpty() && step2_rubella_test_notdone.contains('other')" -actions: - - "isRelevant = true" ---- -name: step2_rubella_test_result -description: Rubella test result -priority: 1 -condition: "step2_rubella_test_status != '' && (step2_rubella_test_status == 'done_today' || step2_rubella_test_status == 'done_earlier') " -actions: - - "isRelevant = true" ---- -name: step2_rubella_test_type -description: Rubellatest result -priority: 1 -condition: "step2_rubella_test_status != '' && (step2_rubella_test_status == 'done_today' || step2_rubella_test_status == 'done_earlier') " -actions: - - "isRelevant = true" ---- name: step1_blood_type_test_scheduled_date description: blood_type_test_scheduled_date priority: 1 @@ -1287,34 +994,6 @@ condition: "step2_hepc_test_status== 'ordered'" actions: - "isRelevant = true" --- -name: step1_hiv_test_scheduled_date -description: hepc_test_scheduled_date -priority: 1 -condition: "step1_hiv_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_hiv_test_scheduled_date -description: hiv_test_scheduled_date -priority: 1 -condition: "step2_hiv_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step1_hiv_test_partner_scheduled_date -description: hiv_test_partner_scheduled_date -priority: 1 -condition: "step1_hiv_test_partner_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_hiv_test_partner_scheduled_date -description: hiv_test_partner_scheduled_date -priority: 1 -condition: "step2_hiv_test_partner_status == 'ordered'" -actions: - - "isRelevant = true" ---- name: step1_partner_rpr_test_scheduled_date description: partner_rpr_test_scheduled_date priority: 1 @@ -1356,31 +1035,3 @@ priority: 1 condition: "step2_tb_screening_status == 'ordered'" actions: - "isRelevant = true" ---- -name: step1_ultrasound_scheduled_date -description: ultrasound_scheduled_date -priority: 1 -condition: "step1_ultrasound == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_ultrasound_scheduled_date -description: ultrasound_scheduled_date -priority: 1 -condition: "step2_ultrasound == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step1_urine_test_scheduled_date -description: urine_test_scheduled_date -priority: 1 -condition: "step1_urine_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_urine_test_scheduled_date -description: urine_test_scheduled_date -priority: 1 -condition: "step2_urine_test_status == 'ordered'" -actions: - - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/ultrasound_tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/ultrasound_tests_relevance_rules.yml new file mode 100644 index 0000000..2131bcc --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/ultrasound_tests_relevance_rules.yml @@ -0,0 +1,14 @@ +--- +name: step1_ultrasound_scheduled_date +description: ultrasound_scheduled_date +priority: 1 +condition: "step1_ultrasound == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_ultrasound_scheduled_date +description: ultrasound_scheduled_date +priority: 1 +condition: "step2_ultrasound == 'ordered'" +actions: + - "isRelevant = true" diff --git a/opensrp-anc/src/main/assets/rule/urine_tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/urine_tests_relevance_rules.yml new file mode 100644 index 0000000..6b9a416 --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/urine_tests_relevance_rules.yml @@ -0,0 +1,155 @@ +--- +name: step1_urine_test_notdone +description: Reason +priority: 1 +condition: "step1_urine_test_status == 'not_done'" +actions: + - "isRelevant = true" +--- +name: step2_urine_test_notdone +description: Reason +priority: 1 +condition: "step2_urine_test_status == 'not_done'" +actions: + - "isRelevant = true" +--- +name: step1_urine_test_notdone_other +description: Specify +priority: 1 +condition: "step1_urine_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step2_urine_test_notdone_other +description: Specify +priority: 1 +condition: "step2_urine_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step1_urine_test_date +description: Urine test date +priority: 1 +condition: "step1_urine_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step2_urine_test_date +description: Urine test date +priority: 1 +condition: "step2_urine_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step1_urine_test_type +description: Urine test type +priority: 1 +condition: "step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier' || step1_urine_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_urine_test_type +description: Urine test type +priority: 1 +condition: "step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier' || step2_urine_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step1_urine_culture +description: Midstream urine culture (recommended) +priority: 1 +condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('midstream_urine_culture')" +actions: + - "isRelevant = true" +--- +name: step2_urine_culture +description: Midstream urine culture (recommended) +priority: 1 +condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('midstream_urine_culture')" +actions: + - "isRelevant = true" +--- +name: step1_urine_gram_stain +description: Midstream urine Gram-staining +priority: 1 +condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('midstream_urine_gram')" +actions: + - "isRelevant = true" +--- +name: step2_urine_gram_stain +description: Midstream urine Gram-staining +priority: 1 +condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('midstream_urine_gram')" +actions: + - "isRelevant = true" +--- +name: step1_urine_nitrites +description: Urine dipstick result - nitrites +priority: 1 +condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step2_urine_nitrites +description: Urine dipstick result - nitrites +priority: 1 +condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step1_urine_leukocytes +description: Urine dipstick result - leukocytes +priority: 1 +condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step2_urine_leukocytes +description: Urine dipstick result - leukocytes +priority: 1 +condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step1_urine_protein +description: Urine dipstick result - protein +priority: 1 +condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step2_urine_protein +description: Urine dipstick result - protein +priority: 1 +condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step1_urine_glucose +description: Urine dipstick result - glucose +priority: 1 +condition: "(step1_urine_test_status == 'done_today' || step1_urine_test_status == 'done_earlier') && step1_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" +--- +name: step2_urine_glucose +description: Urine dipstick result - glucose +priority: 1 +condition: "(step2_urine_test_status == 'done_today' || step2_urine_test_status == 'done_earlier') && step2_urine_test_type.contains('urine_dipstick')" +actions: + - "isRelevant = true" + +--- +name: step1_gbs_agent_note +description: gbs_agent_note +priority: 1 +condition: "step1_urine_culture == 'positive_gbs'" +actions: + - "isRelevant = true" +--- +name: step2_gbs_agent_note +description: gbs_agent_note +priority: 1 +condition: "step2_urine_culture == 'positive_gbs'" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java index 69409b8..7b41605 100644 --- a/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java +++ b/opensrp-anc/src/main/java/org/smartregister/anc/library/repository/DashboardRepository.java @@ -148,7 +148,6 @@ public static int getExpectedDeliveries(String dateStart, String dateEnd) { } } - } return count; } diff --git a/reference-app/build.gradle b/reference-app/build.gradle index 089175d..483d78a 100644 --- a/reference-app/build.gradle +++ b/reference-app/build.gradle @@ -237,7 +237,7 @@ dependencies { implementation project(":opensrp-anc") implementation 'org.smartregister:opensrp-client-utils:0.0.6-SNAPSHOT' implementation 'org.smartregister:opensrp-client-materialedittext:2.1.6-SNAPSHOT' - implementation('rw.ths:opensrp-client-native-form:1.0-local-release') { + implementation('org.smartregister:opensrp-client-native-form:3.1.2-SNAPSHOT@aar') { transitive = true exclude group: 'com.android.support', module: 'recyclerview-v7' exclude group: 'com.android.support', module: 'appcompat-v7' @@ -264,7 +264,7 @@ dependencies { exclude group: 'com.ibm.fhir', module: 'fhir-model' } - implementation('rw.ths.corelibary:corelibary:1.5-local-debug') { + implementation('org.smartregister:opensrp-client-core:6.1.2-SNAPSHOT@aar') { transitive = true exclude group: 'com.github.bmelnychuk', module: 'atv' exclude group: 'com.google.guava', module: 'guava' @@ -295,7 +295,7 @@ dependencies { // exclude group: 'com.ibm.fhir', module: 'fhir-model' // exclude group: 'org.smartregister', module: 'android-p2p-sync' // } - api("rw.ths:p2p-sync:1.0-local-release") { + api("org.smartregister:android-p2p-sync:0.4.0-DEV-SNAPSHOT") { transitive = true exclude group: 'org.smartregister', module: 'opensrp-client-core' exclude group: 'com.android.support', module: 'appcompat-v7' From 31479ff37f5578115de590955adce5ee78b8bb62 Mon Sep 17 00:00:00 2001 From: hilpitome Date: Wed, 6 Dec 2023 11:21:47 +0300 Subject: [PATCH 7/8] move more relevance rules to a single file --- .../tests_blood_haemoglobin_sub_form.json | 30 +- .../sub_form/tests_blood_type_sub_form.json | 10 +- .../sub_form/tests_hepatitis_b_sub_form.json | 20 +- .../sub_form/tests_hepatitis_c_sub_form.json | 18 +- .../sub_form/tests_hiv_sub_form.json | 2 +- .../sub_form/tests_partner_rpr_sub_form.json | 10 +- .../sub_form/tests_syphilis_sub_form.json | 22 +- ...les.yaml => hiv_tests_relevance_rules.yml} | 0 .../assets/rule/rpr_tests_relevance_rules.yml | 42 ++ .../rule/syphilis_tests_relevance_rules.yml | 154 +++++++ .../rule/tests_blood_type_relevance_rules.yml | 70 +++ .../tests_haemoglobin_relelevance_rules.yml | 127 +++++ .../tests_hepatitis_b_relevance_rules.yml | 28 ++ .../tests_hepatitis_c_relevance_rules.yml | 15 + .../assets/rule/tests_relevance_rules.yml | 436 +----------------- 15 files changed, 493 insertions(+), 491 deletions(-) rename opensrp-anc/src/main/assets/rule/{hiv_tests_relevance_rules.yaml => hiv_tests_relevance_rules.yml} (100%) create mode 100644 opensrp-anc/src/main/assets/rule/rpr_tests_relevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/syphilis_tests_relevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/tests_blood_type_relevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/tests_haemoglobin_relelevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/tests_hepatitis_b_relevance_rules.yml create mode 100644 opensrp-anc/src/main/assets/rule/tests_hepatitis_c_relevance_rules.yml diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_haemoglobin_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_haemoglobin_sub_form.json index 1af5cc6..a2a3f2d 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_haemoglobin_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_haemoglobin_sub_form.json @@ -100,7 +100,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -120,7 +120,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -154,7 +154,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } }, @@ -175,7 +175,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } }, @@ -234,7 +234,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -266,7 +266,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -298,7 +298,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -330,7 +330,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -377,7 +377,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -401,7 +401,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -419,7 +419,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -444,7 +444,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -462,7 +462,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -487,7 +487,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } @@ -505,7 +505,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_haemoglobin_relelevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_type_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_type_sub_form.json index 6288ffb..dd00151 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_type_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_blood_type_sub_form.json @@ -118,7 +118,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_blood_type_relevance_rules.yml" } } }, @@ -179,7 +179,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_blood_type_relevance_rules.yml" } } }, @@ -244,7 +244,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_blood_type_relevance_rules.yml" } } } @@ -282,7 +282,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_blood_type_relevance_rules.yml" } } } @@ -300,7 +300,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_blood_type_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_b_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_b_sub_form.json index ec143c0..6c4a46b 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_b_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_b_sub_form.json @@ -101,7 +101,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } @@ -119,7 +119,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } }, @@ -139,7 +139,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } @@ -172,7 +172,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } }, @@ -225,7 +225,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } }, @@ -267,7 +267,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } @@ -305,7 +305,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } @@ -343,7 +343,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } @@ -377,7 +377,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } @@ -393,7 +393,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_b_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_c_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_c_sub_form.json index d1c03db..b3a62a2 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_c_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hepatitis_c_sub_form.json @@ -99,7 +99,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } @@ -115,7 +115,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } @@ -148,7 +148,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } }, @@ -177,7 +177,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } }, @@ -228,7 +228,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } @@ -265,7 +265,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } @@ -302,7 +302,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } @@ -339,7 +339,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } @@ -373,7 +373,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "tests_hepatitis_c_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json index 5b06dee..720690a 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_hiv_sub_form.json @@ -102,7 +102,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "hiv_hiv_tests_relevance_rules.yml" + "rules-file": "hiv_tests_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_partner_rpr_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_partner_rpr_sub_form.json index bdb7266..32b2f66 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_partner_rpr_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_partner_rpr_sub_form.json @@ -101,7 +101,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rpr_tests_relevance_rules.yml" } } } @@ -117,7 +117,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rpr_tests_relevance_rules.yml" } } } @@ -150,7 +150,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rpr_tests_relevance_rules.yml" } } }, @@ -179,7 +179,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rpr_tests_relevance_rules.yml" } } }, @@ -229,7 +229,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "rpr_tests_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/json.form/sub_form/tests_syphilis_sub_form.json b/opensrp-anc/src/main/assets/json.form/sub_form/tests_syphilis_sub_form.json index 5ed7906..f13577d 100644 --- a/opensrp-anc/src/main/assets/json.form/sub_form/tests_syphilis_sub_form.json +++ b/opensrp-anc/src/main/assets/json.form/sub_form/tests_syphilis_sub_form.json @@ -72,7 +72,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } @@ -90,7 +90,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } @@ -108,7 +108,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } }, @@ -154,7 +154,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } }, @@ -173,7 +173,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } @@ -206,7 +206,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } }, @@ -259,7 +259,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } }, @@ -299,7 +299,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } @@ -336,7 +336,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } @@ -373,7 +373,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } @@ -407,7 +407,7 @@ "relevance": { "rules-engine": { "ex-rules": { - "rules-file": "tests_relevance_rules.yml" + "rules-file": "syphilis_tests_relevance_rules.yml" } } } diff --git a/opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yaml b/opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yml similarity index 100% rename from opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yaml rename to opensrp-anc/src/main/assets/rule/hiv_tests_relevance_rules.yml diff --git a/opensrp-anc/src/main/assets/rule/rpr_tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/rpr_tests_relevance_rules.yml new file mode 100644 index 0000000..1d14fd2 --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/rpr_tests_relevance_rules.yml @@ -0,0 +1,42 @@ +--- +name: step2_partner_rpr_test_notdone +description: Partner RPR not done +priority: 1 +condition: "step2_partner_rpr_test_status != '' && step2_partner_rpr_test_status == 'not_done' " +actions: + - "isRelevant = true" +--- +name: step2_partner_rpr_test_notdone_other +description: Reason +priority: 1 +condition: "!step2_partner_rpr_test_notdone.isEmpty() && step2_partner_rpr_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step2_partner_rpr_test_date +description: Date that the partner RPR test was done. +priority: 1 +condition: "step2_partner_rpr_test_status != '' && step2_partner_rpr_test_status == 'done_earlier' " +actions: + - "isRelevant = true" +--- +name: step1_partner_rpr_test_scheduled_date +description: partner_rpr_test_scheduled_date +priority: 1 +condition: "step1_partner_rpr_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_partner_rpr_test_scheduled_date +description: partner_rpr_test_scheduled_date +priority: 1f +condition: "step2_partner_rpr_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_partner_rpr_test_result +description: Partener RPR test result +priority: 1 +condition: "step2_partner_rpr_test_status != '' && (step2_partner_rpr_test_status == 'done_today' || step2_partner_rpr_test_status == 'done_earlier') " +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/syphilis_tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/syphilis_tests_relevance_rules.yml new file mode 100644 index 0000000..666d967 --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/syphilis_tests_relevance_rules.yml @@ -0,0 +1,154 @@ +--- +name: step1_syphilis_greater_5_toaster +description: syphilis_greater_5_toaster +priority: 1 +condition: "global_pop_syphilis == true && global_pop_syphilis != ''" +actions: + - "isRelevant = true" +--- +name: step2_syphilis_greater_5_toaster +description: syphilis_greater_5_toaster +priority: 1 +condition: "global_pop_syphilis == true && global_pop_syphilis != ''" +actions: + - "isRelevant = true" +--- +name: step1_syphilis_below_5_toaster +description: syphilis_below_5_toaster +priority: 1 +condition: "global_pop_syphilis == false && global_pop_syphilis != ''" +actions: + - "isRelevant = true" +--- +name: step2_syphilis_below_5_toaster +description: syphilis_below_5_toaster +priority: 1 +condition: "global_pop_syphilis == false && global_pop_syphilis != ''" +actions: + - "isRelevant = true" +--- +name: step1_syph_test_notdone +description: Reason +priority: 1 +condition: "step1_syph_test_status == 'not_done'" +actions: + - "isRelevant = true" +--- +name: step2_syph_test_notdone +description: Reason +priority: 1 +condition: "step2_syph_test_status == 'not_done'" +actions: + - "isRelevant = true" +--- +name: step1_syph_test_notdone_other +description: Specify +priority: 1 +condition: "step1_syph_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step2_syph_test_notdone_other +description: Specify +priority: 1 +condition: "step2_syph_test_notdone.contains('other')" +actions: + - "isRelevant = true" +--- +name: step1_syphilis_test_date +description: Syphilis test date +priority: 1 +condition: "step1_syph_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step2_syphilis_test_date +description: Syphilis test date +priority: 1 +condition: "step2_syph_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step1_syph_test_type +description: Syphilis test type +priority: 1 +condition: "step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step2_syph_test_type +description: Syphilis test type +priority: 1 +condition: "step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier'" +actions: + - "isRelevant = true" +--- +name: step1_rapid_syphilis_test +description: Rapid syphilis test (RST) +priority: 1 +condition: "((step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier') && step1_syph_test_type == 'rapid_syphilis')" +actions: + - "isRelevant = true" +--- +name: step2_rapid_syphilis_test +description: Rapid syphilis test (RST) +priority: 1 +condition: "((step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier') && step2_syph_test_type == 'rapid_syphilis')" +actions: + - "isRelevant = true" +--- +name: step1_rpr_syphilis_test +description: Rapid plasma reagin (RPR) test +priority: 1 +condition: "((step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier') && step1_syph_test_type == 'rapid_plasma')" +actions: + - "isRelevant = true" +--- +name: step2_rpr_syphilis_test +description: Rapid plasma reagin (RPR) test +priority: 1 +condition: "((step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier') && step2_syph_test_type == 'rapid_plasma')" +actions: + - "isRelevant = true" +--- +name: step1_lab_syphilis_test +description: Off-site lab test for syphilis +priority: 1 +condition: "((step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier') && step1_syph_test_type == 'off_site_lab')" +actions: + - "isRelevant = true" +--- +name: step2_lab_syphilis_test +description: Off-site lab test for syphilis +priority: 1 +condition: "((step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier') && step2_syph_test_type == 'off_site_lab')" +actions: + - "isRelevant = true" +--- +name: step1_syphilis_danger_toaster +description: Syphilis test positive +priority: 1 +condition: "step1_syphilis_positive == 1" +actions: + - "isRelevant = true" +--- +name: step2_syphilis_danger_toaster +description: Syphilis test positive +priority: 1 +condition: "step2_syphilis_positive == 1" +actions: + - "isRelevant = true" +--- +name: step1_syph_test_scheduled_date +description: syph_test_scheduled_date +priority: 1 +condition: "step1_syph_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_syph_test_scheduled_date +description: syph_test_scheduled_date +priority: 1 +condition: "step2_syph_test_status == 'ordered'" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/tests_blood_type_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/tests_blood_type_relevance_rules.yml new file mode 100644 index 0000000..87cefaf --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/tests_blood_type_relevance_rules.yml @@ -0,0 +1,70 @@ +--- +name: step1_blood_type_test_date +description: blood_type_test_date +priority: 1 +condition: "(step1_blood_type_test_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step2_blood_type_test_date +description: blood_type_test_date +priority: 1 +condition: "(step2_blood_type_test_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step1_blood_type +description: blood_type +priority: 1 +condition: "(step1_blood_type_test_status == 'done_today' || step1_blood_type_test_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step2_blood_type +description: blood_type +priority: 1 +condition: "(step2_blood_type_test_status == 'done_today' || step2_blood_type_test_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step1_rh_factor +description: rh_factor +priority: 1 +condition: "(step1_blood_type_test_status == 'done_today' || step1_blood_type_test_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step2_rh_factor +description: rh_factor +priority: 1 +condition: "(step2_blood_type_test_status == 'done_today' || step2_blood_type_test_status == 'done_earlier')" +actions: + - "isRelevant = true" +--- +name: step1_rh_factor_toaster +description: rh_factor +priority: 1 +condition: "(step1_rh_factor != '' && step1_rh_factor == 'negative')" +actions: + - "isRelevant = true" +--- +name: step2_rh_factor_toaster +description: rh_factor +priority: 1 +condition: "(step2_rh_factor != '' && step2_rh_factor == 'negative')" +actions: + - "isRelevant = true" +--- +name: step1_blood_type_test_scheduled_date +description: blood_type_test_scheduled_date +priority: 1 +condition: "step1_blood_type_test_status == 'ordered'" +actions: + - "isRelevant = true" +--- +name: step2_blood_type_test_scheduled_date +description: blood_type_test_scheduled_date +priority: 1 +condition: "step2_blood_type_test_status == 'orderes'" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/tests_haemoglobin_relelevance_rules.yml b/opensrp-anc/src/main/assets/rule/tests_haemoglobin_relelevance_rules.yml new file mode 100644 index 0000000..151be45 --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/tests_haemoglobin_relelevance_rules.yml @@ -0,0 +1,127 @@ + +--- +name: step1_hb_gmeter +description: hb_gmeter +priority: 1 +condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'hb_test_haemoglobinometer'" +actions: + - "isRelevant = true" +--- +name: step2_hb_gmeter +description: hb_gmeter +priority: 1 +condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'hb_test_haemoglobinometer'" +actions: + - "isRelevant = true" +--- +name: step1_hb_colour +description: hb_test_type +priority: 1 +condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'hb_test_colour_scale'" +actions: + - "isRelevant = true" +--- +name: step2_hb_colour +description: hb_test_type +priority: 1 +condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'hb_test_colour_scale'" +actions: + - "isRelevant = true" +--- +name: step1_anaemia_diagnosis_danger_toaster +description: anaemia_diagnosis_danger_toaster +priority: 1 +condition: "step1_anaemic == 1" +actions: + - "isRelevant = true" +--- +name: step2_anaemia_diagnosis_danger_toaster +description: anaemia_diagnosis_danger_toaster +priority: 1 +condition: "step2_anaemic == 1" +actions: + - "isRelevant = true" +--- +name: step1_ht +description: ht +priority: 1 +condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'complete_blood_count'" +actions: + - "isRelevant = true" +--- +name: step2_ht +description: ht +priority: 1 +condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'complete_blood_count'" +actions: + - "isRelevant = true" +--- +name: step1_hematocrit_danger_toaster +description: hematocrit_danger_toaster +priority: 1 +condition: "step1_ht > 0 && step1_ht < 20" +actions: + - "isRelevant = true" +--- +name: step2_hematocrit_danger_toaster +description: hematocrit_danger_toaster +priority: 1 +condition: "step2_ht > 0 && step2_ht < 20" +actions: + - "isRelevant = true" +--- +name: step1_wbc +description: wbc +priority: 1 +condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'complete_blood_count'" +actions: + - "isRelevant = true" +--- +name: step2_wbc +description: wbc +priority: 1 +condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'complete_blood_count'" +actions: + - "isRelevant = true" +--- +name: step1_wbc_danger_toaster +description: wbc_danger_toaster +priority: 1 +condition: "step1_wbc > 16000" +actions: + - "isRelevant = true" +--- +name: step2_wbc_danger_toaster +description: wbc_danger_toaster +priority: 1 +condition: "step2_wbc > 16000" +actions: + - "isRelevant = true" +--- +name: step1_platelets +description: platelets +priority: 1 +condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'complete_blood_count'" +actions: + - "isRelevant = true" +--- +name: step2_platelets +description: platelets +priority: 1 +condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'complete_blood_count'" +actions: + - "isRelevant = true" +--- +name: step1_paltelets_danger_toaster +description: paltelets_danger_toaster +priority: 1 +condition: "step1_platelets > 0 && step1_platelets < 100000" +actions: + - "isRelevant = true" +--- +name: step2_paltelets_danger_toaster +description: paltelets_danger_toaster +priority: 1 +condition: "step2_platelets > 0 && step2_platelets < 100000" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/tests_hepatitis_b_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/tests_hepatitis_b_relevance_rules.yml new file mode 100644 index 0000000..c245793 --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/tests_hepatitis_b_relevance_rules.yml @@ -0,0 +1,28 @@ +--- +name: step1_hepatitis_b_danger_toaster +description: Hep B positive diagnosis! +priority: 1 +condition: "step1_hepb_positive == 1" +actions: + - "isRelevant = true" +--- +name: step2_hepatitis_b_danger_toaster +description: Hep B positive diagnosis! +priority: 1 +condition: "step2_hepb_positive == 1" +actions: + - "isRelevant = true" +--- +name: step1_hepatitis_b_info_toaster +description: Hep B vaccination required +priority: 1 +condition: "step1_hepb_positive == 0" +actions: + - "isRelevant = true" +--- +name: step2_hepatitis_b_info_toaster +description: Hep B vaccination required +priority: 1 +condition: "step2_hepb_positive == 0" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/tests_hepatitis_c_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/tests_hepatitis_c_relevance_rules.yml new file mode 100644 index 0000000..b87c3ed --- /dev/null +++ b/opensrp-anc/src/main/assets/rule/tests_hepatitis_c_relevance_rules.yml @@ -0,0 +1,15 @@ + +--- +name: step1_hepatitis_c_danger_toaster +description: Counselling and referral required. +priority: 1 +condition: "step1_hepc_positive == 1" +actions: + - "isRelevant = true" +--- +name: step2_hepatitis_c_danger_toaster +description: Counselling and referral required. +priority: 1 +condition: "step2_hepc_positive == 1" +actions: + - "isRelevant = true" \ No newline at end of file diff --git a/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml b/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml index c7660c9..f823f9f 100644 --- a/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml +++ b/opensrp-anc/src/main/assets/rule/tests_relevance_rules.yml @@ -96,34 +96,7 @@ priority: 1 condition: "(step2_hepb_test_type == 'hbsag_dbs' && step2_hepb_test_status == 'done_today') || (step2_hepb_test_type == 'hbsag_dbs' && step2_hepb_test_status == 'done_earlier')" actions: - "isRelevant = true" ---- -name: step1_hepatitis_b_danger_toaster -description: Hep B positive diagnosis! -priority: 1 -condition: "step1_hepb_positive == 1" -actions: -- "isRelevant = true" ---- -name: step2_hepatitis_b_danger_toaster -description: Hep B positive diagnosis! -priority: 1 -condition: "step2_hepb_positive == 1" -actions: -- "isRelevant = true" ---- -name: step1_hepatitis_b_info_toaster -description: Hep B vaccination required -priority: 1 -condition: "step1_hepb_positive == 0" -actions: -- "isRelevant = true" ---- -name: step2_hepatitis_b_info_toaster -description: Hep B vaccination required -priority: 1 -condition: "step2_hepb_positive == 0" -actions: -- "isRelevant = true" + --- name: step1_hepc_test_notdone description: Reason @@ -222,161 +195,6 @@ priority: 1 condition: "!step1_hepc_test_notdone.isEmpty() && step1_hepc_test_notdone.contains('other')" actions: - "isRelevant = true" ---- -name: step1_hepatitis_c_danger_toaster -description: Counselling and referral required. -priority: 1 -condition: "step1_hepc_positive == 1" -actions: -- "isRelevant = true" ---- -name: step2_hepatitis_c_danger_toaster -description: Counselling and referral required. -priority: 1 -condition: "step2_hepc_positive == 1" -actions: -- "isRelevant = true" ---- -name: step1_syphilis_greater_5_toaster -description: syphilis_greater_5_toaster -priority: 1 -condition: "global_pop_syphilis == true && global_pop_syphilis != ''" -actions: -- "isRelevant = true" ---- -name: step2_syphilis_greater_5_toaster -description: syphilis_greater_5_toaster -priority: 1 -condition: "global_pop_syphilis == true && global_pop_syphilis != ''" -actions: -- "isRelevant = true" ---- -name: step1_syphilis_below_5_toaster -description: syphilis_below_5_toaster -priority: 1 -condition: "global_pop_syphilis == false && global_pop_syphilis != ''" -actions: -- "isRelevant = true" ---- -name: step2_syphilis_below_5_toaster -description: syphilis_below_5_toaster -priority: 1 -condition: "global_pop_syphilis == false && global_pop_syphilis != ''" -actions: -- "isRelevant = true" ---- -name: step1_syph_test_notdone -description: Reason -priority: 1 -condition: "step1_syph_test_status == 'not_done'" -actions: -- "isRelevant = true" ---- -name: step2_syph_test_notdone -description: Reason -priority: 1 -condition: "step2_syph_test_status == 'not_done'" -actions: -- "isRelevant = true" ---- -name: step1_syph_test_notdone_other -description: Specify -priority: 1 -condition: "step1_syph_test_notdone.contains('other')" -actions: -- "isRelevant = true" ---- -name: step2_syph_test_notdone_other -description: Specify -priority: 1 -condition: "step2_syph_test_notdone.contains('other')" -actions: -- "isRelevant = true" ---- -name: step1_syphilis_test_date -description: Syphilis test date -priority: 1 -condition: "step1_syph_test_status == 'done_earlier'" -actions: -- "isRelevant = true" ---- -name: step2_syphilis_test_date -description: Syphilis test date -priority: 1 -condition: "step2_syph_test_status == 'done_earlier'" -actions: -- "isRelevant = true" ---- -name: step1_syph_test_type -description: Syphilis test type -priority: 1 -condition: "step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier'" -actions: -- "isRelevant = true" ---- -name: step2_syph_test_type -description: Syphilis test type -priority: 1 -condition: "step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier'" -actions: -- "isRelevant = true" ---- -name: step1_rapid_syphilis_test -description: Rapid syphilis test (RST) -priority: 1 -condition: "((step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier') && step1_syph_test_type == 'rapid_syphilis')" -actions: -- "isRelevant = true" ---- -name: step2_rapid_syphilis_test -description: Rapid syphilis test (RST) -priority: 1 -condition: "((step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier') && step2_syph_test_type == 'rapid_syphilis')" -actions: -- "isRelevant = true" ---- -name: step1_rpr_syphilis_test -description: Rapid plasma reagin (RPR) test -priority: 1 -condition: "((step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier') && step1_syph_test_type == 'rapid_plasma')" -actions: -- "isRelevant = true" ---- -name: step2_rpr_syphilis_test -description: Rapid plasma reagin (RPR) test -priority: 1 -condition: "((step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier') && step2_syph_test_type == 'rapid_plasma')" -actions: -- "isRelevant = true" ---- -name: step1_lab_syphilis_test -description: Off-site lab test for syphilis -priority: 1 -condition: "((step1_syph_test_status == 'done_today' || step1_syph_test_status == 'done_earlier') && step1_syph_test_type == 'off_site_lab')" -actions: -- "isRelevant = true" ---- -name: step2_lab_syphilis_test -description: Off-site lab test for syphilis -priority: 1 -condition: "((step2_syph_test_status == 'done_today' || step2_syph_test_status == 'done_earlier') && step2_syph_test_type == 'off_site_lab')" -actions: -- "isRelevant = true" ---- -name: step1_syphilis_danger_toaster -description: Syphilis test positive -priority: 1 -condition: "step1_syphilis_positive == 1" -actions: -- "isRelevant = true" ---- -name: step2_syphilis_danger_toaster -description: Syphilis test positive -priority: 1 -condition: "step2_syphilis_positive == 1" -actions: -- "isRelevant = true" - --- name: step1_gdm_risk_toaster description: Gestational diabetes mellitus (GDM) risk counseling @@ -546,132 +364,6 @@ condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'do actions: - "isRelevant = true" --- -name: step1_hb_gmeter -description: hb_gmeter -priority: 1 -condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'hb_test_haemoglobinometer'" -actions: -- "isRelevant = true" ---- -name: step2_hb_gmeter -description: hb_gmeter -priority: 1 -condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'hb_test_haemoglobinometer'" -actions: -- "isRelevant = true" ---- -name: step1_hb_colour -description: hb_test_type -priority: 1 -condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'hb_test_colour_scale'" -actions: -- "isRelevant = true" ---- -name: step2_hb_colour -description: hb_test_type -priority: 1 -condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'hb_test_colour_scale'" -actions: -- "isRelevant = true" ---- -name: step1_anaemia_diagnosis_danger_toaster -description: anaemia_diagnosis_danger_toaster -priority: 1 -condition: "step1_anaemic == 1" -actions: -- "isRelevant = true" ---- -name: step2_anaemia_diagnosis_danger_toaster -description: anaemia_diagnosis_danger_toaster -priority: 1 -condition: "step2_anaemic == 1" -actions: -- "isRelevant = true" ---- -name: step1_ht -description: ht -priority: 1 -condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'complete_blood_count'" -actions: -- "isRelevant = true" ---- -name: step2_ht -description: ht -priority: 1 -condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'complete_blood_count'" -actions: -- "isRelevant = true" ---- -name: step1_hematocrit_danger_toaster -description: hematocrit_danger_toaster -priority: 1 -condition: "step1_ht > 0 && step1_ht < 20" -actions: -- "isRelevant = true" ---- -name: step2_hematocrit_danger_toaster -description: hematocrit_danger_toaster -priority: 1 -condition: "step2_ht > 0 && step2_ht < 20" -actions: -- "isRelevant = true" ---- -name: step1_wbc -description: wbc -priority: 1 -condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'complete_blood_count'" -actions: -- "isRelevant = true" ---- -name: step2_wbc -description: wbc -priority: 1 -condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'complete_blood_count'" -actions: -- "isRelevant = true" ---- -name: step1_wbc_danger_toaster -description: wbc_danger_toaster -priority: 1 -condition: "step1_wbc > 16000" -actions: -- "isRelevant = true" ---- -name: step2_wbc_danger_toaster -description: wbc_danger_toaster -priority: 1 -condition: "step2_wbc > 16000" -actions: -- "isRelevant = true" ---- -name: step1_platelets -description: platelets -priority: 1 -condition: "(step1_hb_test_status == 'done_today' || step1_hb_test_status == 'done_earlier') && step1_hb_test_type == 'complete_blood_count'" -actions: -- "isRelevant = true" ---- -name: step2_platelets -description: platelets -priority: 1 -condition: "(step2_hb_test_status == 'done_today' || step2_hb_test_status == 'done_earlier') && step2_hb_test_type == 'complete_blood_count'" -actions: -- "isRelevant = true" ---- -name: step1_paltelets_danger_toaster -description: paltelets_danger_toaster -priority: 1 -condition: "step1_platelets > 0 && step1_platelets < 100000" -actions: -- "isRelevant = true" ---- -name: step2_paltelets_danger_toaster -description: paltelets_danger_toaster -priority: 1 -condition: "step2_platelets > 0 && step2_platelets < 100000" -actions: -- "isRelevant = true" ---- name: step1_tb_screening_notdone description: tb_screening_status priority: 1 @@ -742,62 +434,6 @@ condition: "step2_tb_screening_status != '' && (step2_tb_screening_status == 'do actions: - "isRelevant = true" --- -name: step1_blood_type_test_date -description: blood_type_test_date -priority: 1 -condition: "(step1_blood_type_test_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step2_blood_type_test_date -description: blood_type_test_date -priority: 1 -condition: "(step2_blood_type_test_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step1_blood_type -description: blood_type -priority: 1 -condition: "(step1_blood_type_test_status == 'done_today' || step1_blood_type_test_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step2_blood_type -description: blood_type -priority: 1 -condition: "(step2_blood_type_test_status == 'done_today' || step2_blood_type_test_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step1_rh_factor -description: rh_factor -priority: 1 -condition: "(step1_blood_type_test_status == 'done_today' || step1_blood_type_test_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step2_rh_factor -description: rh_factor -priority: 1 -condition: "(step2_blood_type_test_status == 'done_today' || step2_blood_type_test_status == 'done_earlier')" -actions: -- "isRelevant = true" ---- -name: step1_rh_factor_toaster -description: rh_factor -priority: 1 -condition: "(step1_rh_factor != '' && step1_rh_factor == 'negative')" -actions: -- "isRelevant = true" ---- -name: step2_rh_factor_toaster -description: rh_factor -priority: 1 -condition: "(step2_rh_factor != '' && step2_rh_factor == 'negative')" -actions: -- "isRelevant = true" ---- name: step2_other_test_name description: other_test_name priority: 1 @@ -812,13 +448,6 @@ condition: "step2_other_test == 'done_earlier' || step2_other_test == 'done_toda actions: - "isRelevant = true" --- -name: step2_partner_rpr_test_date -description: Date that the partner RPR test was done. -priority: 1 -condition: "step2_partner_rpr_test_status != '' && step2_partner_rpr_test_status == 'done_earlier' " -actions: - - "isRelevant = true" ---- name: step2_cmv_test_date description: Date that the partner RPR test was done. priority: 1 @@ -826,13 +455,6 @@ condition: "step2_cmv_test_status != '' && step2_cmv_test_status == 'done_earlie actions: - "isRelevant = true" --- -name: step2_partner_rpr_test_notdone -description: Partner RPR not done -priority: 1 -condition: "step2_partner_rpr_test_status != '' && step2_partner_rpr_test_status == 'not_done' " -actions: - - "isRelevant = true" ---- name: step2_cmv_test_notdone description: CMV test not done priority: 1 @@ -840,13 +462,6 @@ condition: "step2_cmv_test_status != '' && step2_cmv_test_status == 'not_done' " actions: - "isRelevant = true" --- -name: step2_partner_rpr_test_notdone_other -description: Reason -priority: 1 -condition: "!step2_partner_rpr_test_notdone.isEmpty() && step2_partner_rpr_test_notdone.contains('other')" -actions: - - "isRelevant = true" ---- name: step2_cmv_test_notdone_other description: Reason priority: 1 @@ -854,13 +469,6 @@ condition: "!step2_cmv_test_notdone.isEmpty() && step2_cmv_test_notdone.contains actions: - "isRelevant = true" --- -name: step2_partner_rpr_test_result -description: Partener RPR test result -priority: 1 -condition: "step2_partner_rpr_test_status != '' && (step2_partner_rpr_test_status == 'done_today' || step2_partner_rpr_test_status == 'done_earlier') " -actions: - - "isRelevant = true" ---- name: step2_cmv_test_result description: CMV test result priority: 1 @@ -910,20 +518,6 @@ condition: "step2_herps_test_status != '' && (step2_herps_test_status == 'done_t actions: - "isRelevant = true" --- -name: step1_blood_type_test_scheduled_date -description: blood_type_test_scheduled_date -priority: 1 -condition: "step1_blood_type_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_blood_type_test_scheduled_date -description: blood_type_test_scheduled_date -priority: 1 -condition: "step2_blood_type_test_status == 'orderes'" -actions: - - "isRelevant = true" ---- name: step1_hepb_test_scheduled_date description: hepb_test_scheduled_date priority: 1 @@ -994,34 +588,6 @@ condition: "step2_hepc_test_status== 'ordered'" actions: - "isRelevant = true" --- -name: step1_partner_rpr_test_scheduled_date -description: partner_rpr_test_scheduled_date -priority: 1 -condition: "step1_partner_rpr_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_partner_rpr_test_scheduled_date -description: partner_rpr_test_scheduled_date -priority: 1 -condition: "step2_partner_rpr_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step1_syph_test_scheduled_date -description: syph_test_scheduled_date -priority: 1 -condition: "step1_syph_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- -name: step2_syph_test_scheduled_date -description: syph_test_scheduled_date -priority: 1 -condition: "step2_syph_test_status == 'ordered'" -actions: - - "isRelevant = true" ---- name: step1_tb_screening_scheduled_date description: tb_screening_scheduled_date priority: 1 From 7b77dac1438cd0988b5412f26428e999b3564010 Mon Sep 17 00:00:00 2001 From: hilpitome Date: Wed, 6 Dec 2023 15:05:15 +0300 Subject: [PATCH 8/8] introduce leak canary --- opensrp-anc/build.gradle | 4 +++- reference-app/build.gradle | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/opensrp-anc/build.gradle b/opensrp-anc/build.gradle index 90752c0..ede8cf6 100644 --- a/opensrp-anc/build.gradle +++ b/opensrp-anc/build.gradle @@ -12,7 +12,7 @@ buildscript { } configurations.all { resolutionStrategy { - eachDependency { details -> + eachDependency { details -> if ('org.jacoco' == details.requested.group) { details.useVersion jacocoVersion } @@ -31,6 +31,7 @@ allprojects { } } } + exclude group: 'junit', module: 'junit' } } } @@ -323,6 +324,7 @@ dependencies { testImplementation 'org.mockito:mockito-core:3.5.15' testImplementation 'org.apache.maven:maven-ant-tasks:2.1.3' testImplementation 'org.skyscreamer:jsonassert:1.5.0' + debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.12' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation('androidx.test.espresso:espresso-core:3.4.0') { diff --git a/reference-app/build.gradle b/reference-app/build.gradle index 483d78a..08321ad 100644 --- a/reference-app/build.gradle +++ b/reference-app/build.gradle @@ -196,6 +196,7 @@ android { configurations.all { resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9' + exclude group: 'junit', module: 'junit' } } @@ -384,6 +385,8 @@ dependencies { testImplementation 'org.mockito:mockito-core:3.5.15' testImplementation 'org.apache.maven:maven-ant-tasks:2.1.3' testImplementation 'org.skyscreamer:jsonassert:1.5.0' + + debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.12' } task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'createDebugCoverageReport']) {