diff --git a/.DS_Store b/.DS_Store index c36a0f11..cc1bfaa8 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/.gitignore b/.gitignore index abd7044a..7f59c64d 100644 --- a/.gitignore +++ b/.gitignore @@ -82,3 +82,6 @@ fastlane/readme.md *custom-flavours.gradle .DS_Store +*.DS_Store +./.DS_Store +./.git/.DS_Store diff --git a/claimManagement/.DS_Store b/claimManagement/.DS_Store index 2473cf23..170906bd 100644 Binary files a/claimManagement/.DS_Store and b/claimManagement/.DS_Store differ diff --git a/claimManagement/build.gradle b/claimManagement/build.gradle index c3a245d7..87eec87c 100644 --- a/claimManagement/build.gradle +++ b/claimManagement/build.gradle @@ -68,7 +68,7 @@ android { demoProd { applicationIdSuffix ".demoProd" resValue "string", "app_name_claims", "Claims Demo" - buildConfigField "String", "API_BASE_URL", '"http://demo.openimis.org/"' + buildConfigField "String", "API_BASE_URL", '"https://demo.openimis.org/"' dimension 'std' } diff --git a/claimManagement/src/.DS_Store b/claimManagement/src/.DS_Store deleted file mode 100644 index bc5cf418..00000000 Binary files a/claimManagement/src/.DS_Store and /dev/null differ diff --git a/claimManagement/src/main/graphql/org.openimis.imisclaim/GetInsureeInquire.graphql b/claimManagement/src/main/graphql/org.openimis.imisclaim/GetInsureeInquire.graphql index 12b720a8..59d593ac 100644 --- a/claimManagement/src/main/graphql/org.openimis.imisclaim/GetInsureeInquire.graphql +++ b/claimManagement/src/main/graphql/org.openimis.imisclaim/GetInsureeInquire.graphql @@ -53,6 +53,7 @@ query GetInsureeInquire($chfId: String) { expiryDate status value + validityTo } } } diff --git a/claimManagement/src/main/java/org/openimis/imisclaims/EnquireActivity.java b/claimManagement/src/main/java/org/openimis/imisclaims/EnquireActivity.java index 7bad7a04..92735f40 100644 --- a/claimManagement/src/main/java/org/openimis/imisclaims/EnquireActivity.java +++ b/claimManagement/src/main/java/org/openimis/imisclaims/EnquireActivity.java @@ -250,7 +250,8 @@ private Insuree getDataFromDb(String chfid) { /* totalConsultationsLeft = */ null, /* totalDeliveriesLeft = */ null, /* totalSurgeriesLeft = */ null, - /* totalVisitsLeft = */ null + /* totalVisitsLeft = */ null, + /* validityTo = */ null )); } c.close(); @@ -335,100 +336,102 @@ public void renderResult(@Nullable Insuree insuree) { ArrayList> PolicyList = new ArrayList<>(); Collections.reverse(insuree.getPolicies()); for (Policy policy : insuree.getPolicies()) { - HashMap policyMap = new HashMap<>(); - double iDedType = policy.getDeductibleType() != null ? policy.getDeductibleType() : 0; + if(policy.getValidityTo() == null){ + HashMap policyMap = new HashMap<>(); + double iDedType = policy.getDeductibleType() != null ? policy.getDeductibleType() : 0; - String Ded = "", Ded1 = "", Ded2 = ""; - String Ceiling = "", Ceiling1 = "", Ceiling2 = ""; + String Ded = "", Ded1 = "", Ded2 = ""; + String Ceiling = "", Ceiling1 = "", Ceiling2 = ""; - //Get the type + //Get the type - if (iDedType == 1 | iDedType == 2 | iDedType == 3) { - if (policy.getDeductibleIp() != null) { - Ded1 = String.valueOf(policy.getDeductibleIp()); - Ded = "Deduction: " + Ded1; + if (iDedType == 1 | iDedType == 2 | iDedType == 3) { + if (policy.getDeductibleIp() != null) { + Ded1 = String.valueOf(policy.getDeductibleIp()); + Ded = "Deduction: " + Ded1; + } + if (policy.getCeilingIp() != null) { + Ceiling1 = String.valueOf(policy.getCeilingIp()); + Ceiling = "Ceiling: " + Ceiling1; + } + } else if (iDedType == 1.1 | iDedType == 2.1 | iDedType == 3.1) { + if (policy.getDeductibleIp() != null) { + Ded1 = " IP:" + policy.getDeductibleIp(); + } + if (policy.getDeductibleOp() != null) { + Ded2 = " OP:" + policy.getDeductibleOp(); + } + if (policy.getCeilingIp() != null) { + Ceiling1 = " IP:" + policy.getCeilingIp(); + } + if (policy.getCeilingIp() != null) { + Ceiling2 = " OP:" + policy.getCeilingOp(); + } + + if (!(Ded1 + Ded2).equals("")) { + Ded = "Deduction: " + Ded1 + Ded2; + } + if (!(Ceiling1 + Ceiling2).equals("")) { + Ceiling = "Ceiling: " + Ceiling1 + Ceiling2; + } } - if (policy.getCeilingIp() != null) { - Ceiling1 = String.valueOf(policy.getCeilingIp()); - Ceiling = "Ceiling: " + Ceiling1; + + String expiryDate = policy.getExpiryDate() != null ? + DateUtils.toDateString(policy.getExpiryDate()) : null; + String status = policy.getStatus().name(); + String heading1; + if (expiryDate != null) { + heading1 = expiryDate + " " + status; + } else { + heading1 = status; } - } else if (iDedType == 1.1 | iDedType == 2.1 | iDedType == 3.1) { - if (policy.getDeductibleIp() != null) { - Ded1 = " IP:" + policy.getDeductibleIp(); + policyMap.put("Heading", policy.getCode()); + policyMap.put("Heading1", heading1); + policyMap.put("SubItem1", policy.getName()); + policyMap.put("SubItem2", Ded); + policyMap.put("SubItem3", Ceiling); + + SQLHandler sqlHandler = new SQLHandler(this); + if (!sqlHandler.getAdjustability("TotalAdmissionsLeft").equals("N")) { + policyMap.put("SubItem4", buildEnquireValue(policy.getTotalAdmissionsLeft(), R.string.totalAdmissionsLeft)); } - if (policy.getDeductibleOp() != null) { - Ded2 = " OP:" + policy.getDeductibleOp(); + if (!sqlHandler.getAdjustability("TotalVisitsLeft").equals("N")) { + policyMap.put("SubItem5", buildEnquireValue(policy.getTotalVisitsLeft(), R.string.totalVisitsLeft)); } - if (policy.getCeilingIp() != null) { - Ceiling1 = " IP:" + policy.getCeilingIp(); + if (!sqlHandler.getAdjustability("TotalConsultationsLeft").equals("N")) { + policyMap.put("SubItem6", buildEnquireValue(policy.getTotalConsultationsLeft(), R.string.totalConsultationsLeft)); } - if (policy.getCeilingIp() != null) { - Ceiling2 = " OP:" + policy.getCeilingOp(); + if (!sqlHandler.getAdjustability("TotalSurgeriesLeft").equals("N")) { + policyMap.put("SubItem7", buildEnquireValue(policy.getTotalSurgeriesLeft(), R.string.totalSurgeriesLeft)); } - - if (!(Ded1 + Ded2).equals("")) { - Ded = "Deduction: " + Ded1 + Ded2; + if (!sqlHandler.getAdjustability("TotalDelivieriesLeft").equals("N")) { + policyMap.put("SubItem8", buildEnquireValue(policy.getTotalDeliveriesLeft(), R.string.totalDeliveriesLeft)); } - if (!(Ceiling1 + Ceiling2).equals("")) { - Ceiling = "Ceiling: " + Ceiling1 + Ceiling2; + if (!sqlHandler.getAdjustability("TotalAntenatalLeft").equals("N")) { + policyMap.put("SubItem9", buildEnquireValue(policy.getTotalAntenatalLeft(), R.string.totalAntenatalLeft)); } - } + if (!sqlHandler.getAdjustability("ConsultationAmountLeft").equals("N")) { + policyMap.put("SubItem10", buildEnquireValue(policy.getConsultationAmountLeft(), R.string.consultationAmountLeft)); + } + if (!sqlHandler.getAdjustability("AntenatalAmountLeft").equals("N")) { + policyMap.put("SubItem13", buildEnquireValue(policy.getAntenatalAmountLeft(), R.string.antenatalAmountLeft)); + } + if (!sqlHandler.getAdjustability("SurgeryAmountLeft").equals("N")) { + policyMap.put("SubItem11", buildEnquireValue(policy.getSurgeryAmountLeft(), R.string.surgeryAmountLeft)); + } + if (!sqlHandler.getAdjustability("HospitalizationAmountLeft").equals("N")) { + policyMap.put("SubItem12", buildEnquireValue(policy.getHospitalizationAmountLeft(), R.string.hospitalizationAmountLeft)); + } + if (!sqlHandler.getAdjustability("DeliveryAmountLeft").equals("N")) { + policyMap.put("SubItem14", buildEnquireValue(policy.getDeliveryAmountLeft(), R.string.deliveryAmountLeft)); + } + sqlHandler.close(); - String expiryDate = policy.getExpiryDate() != null ? - DateUtils.toDateString(policy.getExpiryDate()) : null; - String status = policy.getStatus().name(); - String heading1; - if (expiryDate != null) { - heading1 = expiryDate + " " + status; - } else { - heading1 = status; - } - policyMap.put("Heading", policy.getCode()); - policyMap.put("Heading1", heading1); - policyMap.put("SubItem1", policy.getName()); - policyMap.put("SubItem2", Ded); - policyMap.put("SubItem3", Ceiling); - - SQLHandler sqlHandler = new SQLHandler(this); - if (!sqlHandler.getAdjustability("TotalAdmissionsLeft").equals("N")) { - policyMap.put("SubItem4", buildEnquireValue(policy.getTotalAdmissionsLeft(), R.string.totalAdmissionsLeft)); - } - if (!sqlHandler.getAdjustability("TotalVisitsLeft").equals("N")) { - policyMap.put("SubItem5", buildEnquireValue(policy.getTotalVisitsLeft(), R.string.totalVisitsLeft)); - } - if (!sqlHandler.getAdjustability("TotalConsultationsLeft").equals("N")) { - policyMap.put("SubItem6", buildEnquireValue(policy.getTotalConsultationsLeft(), R.string.totalConsultationsLeft)); - } - if (!sqlHandler.getAdjustability("TotalSurgeriesLeft").equals("N")) { - policyMap.put("SubItem7", buildEnquireValue(policy.getTotalSurgeriesLeft(), R.string.totalSurgeriesLeft)); - } - if (!sqlHandler.getAdjustability("TotalDelivieriesLeft").equals("N")) { - policyMap.put("SubItem8", buildEnquireValue(policy.getTotalDeliveriesLeft(), R.string.totalDeliveriesLeft)); + PolicyList.add(policyMap); + etCHFID.setText(""); + //break; } - if (!sqlHandler.getAdjustability("TotalAntenatalLeft").equals("N")) { - policyMap.put("SubItem9", buildEnquireValue(policy.getTotalAntenatalLeft(), R.string.totalAntenatalLeft)); - } - if (!sqlHandler.getAdjustability("ConsultationAmountLeft").equals("N")) { - policyMap.put("SubItem10", buildEnquireValue(policy.getConsultationAmountLeft(), R.string.consultationAmountLeft)); - } - if (!sqlHandler.getAdjustability("AntenatalAmountLeft").equals("N")) { - policyMap.put("SubItem13", buildEnquireValue(policy.getAntenatalAmountLeft(), R.string.antenatalAmountLeft)); - } - if (!sqlHandler.getAdjustability("SurgeryAmountLeft").equals("N")) { - policyMap.put("SubItem11", buildEnquireValue(policy.getSurgeryAmountLeft(), R.string.surgeryAmountLeft)); - } - if (!sqlHandler.getAdjustability("HospitalizationAmountLeft").equals("N")) { - policyMap.put("SubItem12", buildEnquireValue(policy.getHospitalizationAmountLeft(), R.string.hospitalizationAmountLeft)); - } - if (!sqlHandler.getAdjustability("DeliveryAmountLeft").equals("N")) { - policyMap.put("SubItem14", buildEnquireValue(policy.getDeliveryAmountLeft(), R.string.deliveryAmountLeft)); - } - sqlHandler.close(); - - PolicyList.add(policyMap); - etCHFID.setText(""); - //break; } ListAdapter adapter = new SimpleAdapter(EnquireActivity.this, diff --git a/claimManagement/src/main/java/org/openimis/imisclaims/domain/entity/Policy.java b/claimManagement/src/main/java/org/openimis/imisclaims/domain/entity/Policy.java index d0383d94..5d5693b5 100644 --- a/claimManagement/src/main/java/org/openimis/imisclaims/domain/entity/Policy.java +++ b/claimManagement/src/main/java/org/openimis/imisclaims/domain/entity/Policy.java @@ -53,6 +53,8 @@ public class Policy implements Parcelable { private final Integer totalSurgeriesLeft; @Nullable private final Integer totalVisitsLeft; + @Nullable + private final Date validityTo; public Policy( @NonNull String code, @@ -75,7 +77,8 @@ public Policy( @Nullable Integer totalConsultationsLeft, @Nullable Integer totalDeliveriesLeft, @Nullable Integer totalSurgeriesLeft, - @Nullable Integer totalVisitsLeft + @Nullable Integer totalVisitsLeft, + @Nullable Date validityTo ) { this.code = code; this.name = name; @@ -98,6 +101,7 @@ public Policy( this.totalDeliveriesLeft = totalDeliveriesLeft; this.totalSurgeriesLeft = totalSurgeriesLeft; this.totalVisitsLeft = totalVisitsLeft; + this.validityTo = validityTo; } protected Policy(Parcel in) { @@ -194,6 +198,11 @@ protected Policy(Parcel in) { } else { totalVisitsLeft = in.readInt(); } + if (in.readByte() == 0) { + validityTo = null; + } else { + validityTo = new Date(in.readLong()); + } } @Override @@ -309,6 +318,12 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeByte((byte) 1); dest.writeInt(totalVisitsLeft); } + if (validityTo == null) { + dest.writeByte((byte) 0); + } else { + dest.writeByte((byte) 1); + dest.writeLong(validityTo.getTime()); + } } @Override @@ -421,6 +436,11 @@ public Integer getTotalVisitsLeft() { return totalVisitsLeft; } + @Nullable + public Date getValidityTo() { + return validityTo; + } + public enum Status { IDLE, ACTIVE, SUSPENDED, EXPIRED, READY } diff --git a/claimManagement/src/main/java/org/openimis/imisclaims/usecase/FetchInsureeInquire.java b/claimManagement/src/main/java/org/openimis/imisclaims/usecase/FetchInsureeInquire.java index 35fd08ac..f1c6d194 100644 --- a/claimManagement/src/main/java/org/openimis/imisclaims/usecase/FetchInsureeInquire.java +++ b/claimManagement/src/main/java/org/openimis/imisclaims/usecase/FetchInsureeInquire.java @@ -100,7 +100,8 @@ private Policy toPolicy(@NonNull GetInsureeInquireQuery.Edge1 edge) { /* totalConsultationsLeft = */ product.maxNoConsultation(), /* totalDeliveriesLeft = */ product.maxNoDelivery(), /* totalSurgeriesLeft = */ product.maxNoSurgery(), - /* totalVisitsLeft = */ product.maxNoVisits() + /* totalVisitsLeft = */ product.maxNoVisits(), + /* validityTo = */ policy.validityTo() ); } diff --git a/claimManagement/src/main/res/layout/content_enquire.xml b/claimManagement/src/main/res/layout/content_enquire.xml index 5fe40a47..a13e0fed 100644 --- a/claimManagement/src/main/res/layout/content_enquire.xml +++ b/claimManagement/src/main/res/layout/content_enquire.xml @@ -116,7 +116,7 @@ diff --git a/claimManagement/src/main/res/layout/policylist.xml b/claimManagement/src/main/res/layout/policylist.xml index 06993404..fb97a7e5 100644 --- a/claimManagement/src/main/res/layout/policylist.xml +++ b/claimManagement/src/main/res/layout/policylist.xml @@ -1,7 +1,7 @@