Skip to content

Commit 865704a

Browse files
committed
improve enquire process
1 parent 71d9491 commit 865704a

File tree

7 files changed

+110
-85
lines changed

7 files changed

+110
-85
lines changed

.DS_Store

0 Bytes
Binary file not shown.

claimManagement/.DS_Store

0 Bytes
Binary file not shown.

claimManagement/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ android {
6868
demoProd {
6969
applicationIdSuffix ".demoProd"
7070
resValue "string", "app_name_claims", "Claims Demo"
71-
buildConfigField "String", "API_BASE_URL", '"http://demo.openimis.org/"'
71+
buildConfigField "String", "API_BASE_URL", '"https://test.amg.km/"'
7272
dimension 'std'
7373
}
7474

claimManagement/src/main/graphql/org.openimis.imisclaim/GetInsureeInquire.graphql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ query GetInsureeInquire($chfId: String) {
5353
expiryDate
5454
status
5555
value
56+
validityTo
5657
}
5758
}
5859
}

claimManagement/src/main/java/org/openimis/imisclaims/EnquireActivity.java

Lines changed: 85 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,8 @@ private Insuree getDataFromDb(String chfid) {
250250
/* totalConsultationsLeft = */ null,
251251
/* totalDeliveriesLeft = */ null,
252252
/* totalSurgeriesLeft = */ null,
253-
/* totalVisitsLeft = */ null
253+
/* totalVisitsLeft = */ null,
254+
/* validityTo = */ null
254255
));
255256
}
256257
c.close();
@@ -333,102 +334,104 @@ public void renderResult(@Nullable Insuree insuree) {
333334
}
334335

335336
ArrayList<Map<String, String>> PolicyList = new ArrayList<>();
336-
Collections.reverse(insuree.getPolicies());
337+
//Collections.reverse(insuree.getPolicies());
337338
for (Policy policy : insuree.getPolicies()) {
338-
HashMap<String, String> policyMap = new HashMap<>();
339-
double iDedType = policy.getDeductibleType() != null ? policy.getDeductibleType() : 0;
339+
if(policy.getValidityTo() == null){
340+
HashMap<String, String> policyMap = new HashMap<>();
341+
double iDedType = policy.getDeductibleType() != null ? policy.getDeductibleType() : 0;
340342

341-
String Ded = "", Ded1 = "", Ded2 = "";
342-
String Ceiling = "", Ceiling1 = "", Ceiling2 = "";
343+
String Ded = "", Ded1 = "", Ded2 = "";
344+
String Ceiling = "", Ceiling1 = "", Ceiling2 = "";
343345

344346

345-
//Get the type
347+
//Get the type
346348

347-
if (iDedType == 1 | iDedType == 2 | iDedType == 3) {
348-
if (policy.getDeductibleIp() != null) {
349-
Ded1 = String.valueOf(policy.getDeductibleIp());
350-
Ded = "Deduction: " + Ded1;
349+
if (iDedType == 1 | iDedType == 2 | iDedType == 3) {
350+
if (policy.getDeductibleIp() != null) {
351+
Ded1 = String.valueOf(policy.getDeductibleIp());
352+
Ded = "Deduction: " + Ded1;
353+
}
354+
if (policy.getCeilingIp() != null) {
355+
Ceiling1 = String.valueOf(policy.getCeilingIp());
356+
Ceiling = "Ceiling: " + Ceiling1;
357+
}
358+
} else if (iDedType == 1.1 | iDedType == 2.1 | iDedType == 3.1) {
359+
if (policy.getDeductibleIp() != null) {
360+
Ded1 = " IP:" + policy.getDeductibleIp();
361+
}
362+
if (policy.getDeductibleOp() != null) {
363+
Ded2 = " OP:" + policy.getDeductibleOp();
364+
}
365+
if (policy.getCeilingIp() != null) {
366+
Ceiling1 = " IP:" + policy.getCeilingIp();
367+
}
368+
if (policy.getCeilingIp() != null) {
369+
Ceiling2 = " OP:" + policy.getCeilingOp();
370+
}
371+
372+
if (!(Ded1 + Ded2).equals("")) {
373+
Ded = "Deduction: " + Ded1 + Ded2;
374+
}
375+
if (!(Ceiling1 + Ceiling2).equals("")) {
376+
Ceiling = "Ceiling: " + Ceiling1 + Ceiling2;
377+
}
351378
}
352-
if (policy.getCeilingIp() != null) {
353-
Ceiling1 = String.valueOf(policy.getCeilingIp());
354-
Ceiling = "Ceiling: " + Ceiling1;
379+
380+
String expiryDate = policy.getExpiryDate() != null ?
381+
DateUtils.toDateString(policy.getExpiryDate()) : null;
382+
String status = policy.getStatus().name();
383+
String heading1;
384+
if (expiryDate != null) {
385+
heading1 = expiryDate + " " + status;
386+
} else {
387+
heading1 = status;
355388
}
356-
} else if (iDedType == 1.1 | iDedType == 2.1 | iDedType == 3.1) {
357-
if (policy.getDeductibleIp() != null) {
358-
Ded1 = " IP:" + policy.getDeductibleIp();
389+
policyMap.put("Heading", policy.getCode());
390+
policyMap.put("Heading1", heading1);
391+
policyMap.put("SubItem1", policy.getName());
392+
policyMap.put("SubItem2", Ded);
393+
policyMap.put("SubItem3", Ceiling);
394+
395+
SQLHandler sqlHandler = new SQLHandler(this);
396+
if (!sqlHandler.getAdjustability("TotalAdmissionsLeft").equals("N")) {
397+
policyMap.put("SubItem4", buildEnquireValue(policy.getTotalAdmissionsLeft(), R.string.totalAdmissionsLeft));
359398
}
360-
if (policy.getDeductibleOp() != null) {
361-
Ded2 = " OP:" + policy.getDeductibleOp();
399+
if (!sqlHandler.getAdjustability("TotalVisitsLeft").equals("N")) {
400+
policyMap.put("SubItem5", buildEnquireValue(policy.getTotalVisitsLeft(), R.string.totalVisitsLeft));
362401
}
363-
if (policy.getCeilingIp() != null) {
364-
Ceiling1 = " IP:" + policy.getCeilingIp();
402+
if (!sqlHandler.getAdjustability("TotalConsultationsLeft").equals("N")) {
403+
policyMap.put("SubItem6", buildEnquireValue(policy.getTotalConsultationsLeft(), R.string.totalConsultationsLeft));
365404
}
366-
if (policy.getCeilingIp() != null) {
367-
Ceiling2 = " OP:" + policy.getCeilingOp();
405+
if (!sqlHandler.getAdjustability("TotalSurgeriesLeft").equals("N")) {
406+
policyMap.put("SubItem7", buildEnquireValue(policy.getTotalSurgeriesLeft(), R.string.totalSurgeriesLeft));
368407
}
369-
370-
if (!(Ded1 + Ded2).equals("")) {
371-
Ded = "Deduction: " + Ded1 + Ded2;
408+
if (!sqlHandler.getAdjustability("TotalDelivieriesLeft").equals("N")) {
409+
policyMap.put("SubItem8", buildEnquireValue(policy.getTotalDeliveriesLeft(), R.string.totalDeliveriesLeft));
372410
}
373-
if (!(Ceiling1 + Ceiling2).equals("")) {
374-
Ceiling = "Ceiling: " + Ceiling1 + Ceiling2;
411+
if (!sqlHandler.getAdjustability("TotalAntenatalLeft").equals("N")) {
412+
policyMap.put("SubItem9", buildEnquireValue(policy.getTotalAntenatalLeft(), R.string.totalAntenatalLeft));
375413
}
376-
}
414+
if (!sqlHandler.getAdjustability("ConsultationAmountLeft").equals("N")) {
415+
policyMap.put("SubItem10", buildEnquireValue(policy.getConsultationAmountLeft(), R.string.consultationAmountLeft));
416+
}
417+
if (!sqlHandler.getAdjustability("AntenatalAmountLeft").equals("N")) {
418+
policyMap.put("SubItem13", buildEnquireValue(policy.getAntenatalAmountLeft(), R.string.antenatalAmountLeft));
419+
}
420+
if (!sqlHandler.getAdjustability("SurgeryAmountLeft").equals("N")) {
421+
policyMap.put("SubItem11", buildEnquireValue(policy.getSurgeryAmountLeft(), R.string.surgeryAmountLeft));
422+
}
423+
if (!sqlHandler.getAdjustability("HospitalizationAmountLeft").equals("N")) {
424+
policyMap.put("SubItem12", buildEnquireValue(policy.getHospitalizationAmountLeft(), R.string.hospitalizationAmountLeft));
425+
}
426+
if (!sqlHandler.getAdjustability("DeliveryAmountLeft").equals("N")) {
427+
policyMap.put("SubItem14", buildEnquireValue(policy.getDeliveryAmountLeft(), R.string.deliveryAmountLeft));
428+
}
429+
sqlHandler.close();
430+
PolicyList.add(policyMap);
431+
etCHFID.setText("");
432+
//break;
377433

378-
String expiryDate = policy.getExpiryDate() != null ?
379-
DateUtils.toDateString(policy.getExpiryDate()) : null;
380-
String status = policy.getStatus().name();
381-
String heading1;
382-
if (expiryDate != null) {
383-
heading1 = expiryDate + " " + status;
384-
} else {
385-
heading1 = status;
386-
}
387-
policyMap.put("Heading", policy.getCode());
388-
policyMap.put("Heading1", heading1);
389-
policyMap.put("SubItem1", policy.getName());
390-
policyMap.put("SubItem2", Ded);
391-
policyMap.put("SubItem3", Ceiling);
392-
393-
SQLHandler sqlHandler = new SQLHandler(this);
394-
if (!sqlHandler.getAdjustability("TotalAdmissionsLeft").equals("N")) {
395-
policyMap.put("SubItem4", buildEnquireValue(policy.getTotalAdmissionsLeft(), R.string.totalAdmissionsLeft));
396-
}
397-
if (!sqlHandler.getAdjustability("TotalVisitsLeft").equals("N")) {
398-
policyMap.put("SubItem5", buildEnquireValue(policy.getTotalVisitsLeft(), R.string.totalVisitsLeft));
399-
}
400-
if (!sqlHandler.getAdjustability("TotalConsultationsLeft").equals("N")) {
401-
policyMap.put("SubItem6", buildEnquireValue(policy.getTotalConsultationsLeft(), R.string.totalConsultationsLeft));
402-
}
403-
if (!sqlHandler.getAdjustability("TotalSurgeriesLeft").equals("N")) {
404-
policyMap.put("SubItem7", buildEnquireValue(policy.getTotalSurgeriesLeft(), R.string.totalSurgeriesLeft));
405-
}
406-
if (!sqlHandler.getAdjustability("TotalDelivieriesLeft").equals("N")) {
407-
policyMap.put("SubItem8", buildEnquireValue(policy.getTotalDeliveriesLeft(), R.string.totalDeliveriesLeft));
408434
}
409-
if (!sqlHandler.getAdjustability("TotalAntenatalLeft").equals("N")) {
410-
policyMap.put("SubItem9", buildEnquireValue(policy.getTotalAntenatalLeft(), R.string.totalAntenatalLeft));
411-
}
412-
if (!sqlHandler.getAdjustability("ConsultationAmountLeft").equals("N")) {
413-
policyMap.put("SubItem10", buildEnquireValue(policy.getConsultationAmountLeft(), R.string.consultationAmountLeft));
414-
}
415-
if (!sqlHandler.getAdjustability("AntenatalAmountLeft").equals("N")) {
416-
policyMap.put("SubItem13", buildEnquireValue(policy.getAntenatalAmountLeft(), R.string.antenatalAmountLeft));
417-
}
418-
if (!sqlHandler.getAdjustability("SurgeryAmountLeft").equals("N")) {
419-
policyMap.put("SubItem11", buildEnquireValue(policy.getSurgeryAmountLeft(), R.string.surgeryAmountLeft));
420-
}
421-
if (!sqlHandler.getAdjustability("HospitalizationAmountLeft").equals("N")) {
422-
policyMap.put("SubItem12", buildEnquireValue(policy.getHospitalizationAmountLeft(), R.string.hospitalizationAmountLeft));
423-
}
424-
if (!sqlHandler.getAdjustability("DeliveryAmountLeft").equals("N")) {
425-
policyMap.put("SubItem14", buildEnquireValue(policy.getDeliveryAmountLeft(), R.string.deliveryAmountLeft));
426-
}
427-
sqlHandler.close();
428-
429-
PolicyList.add(policyMap);
430-
etCHFID.setText("");
431-
//break;
432435
}
433436

434437
ListAdapter adapter = new SimpleAdapter(EnquireActivity.this,

claimManagement/src/main/java/org/openimis/imisclaims/domain/entity/Policy.java

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,8 @@ public class Policy implements Parcelable {
5353
private final Integer totalSurgeriesLeft;
5454
@Nullable
5555
private final Integer totalVisitsLeft;
56+
@Nullable
57+
private final Date validityTo;
5658

5759
public Policy(
5860
@NonNull String code,
@@ -75,7 +77,8 @@ public Policy(
7577
@Nullable Integer totalConsultationsLeft,
7678
@Nullable Integer totalDeliveriesLeft,
7779
@Nullable Integer totalSurgeriesLeft,
78-
@Nullable Integer totalVisitsLeft
80+
@Nullable Integer totalVisitsLeft,
81+
@Nullable Date validityTo
7982
) {
8083
this.code = code;
8184
this.name = name;
@@ -98,6 +101,7 @@ public Policy(
98101
this.totalDeliveriesLeft = totalDeliveriesLeft;
99102
this.totalSurgeriesLeft = totalSurgeriesLeft;
100103
this.totalVisitsLeft = totalVisitsLeft;
104+
this.validityTo = validityTo;
101105
}
102106

103107
protected Policy(Parcel in) {
@@ -194,6 +198,11 @@ protected Policy(Parcel in) {
194198
} else {
195199
totalVisitsLeft = in.readInt();
196200
}
201+
if (in.readByte() == 0) {
202+
validityTo = null;
203+
} else {
204+
validityTo = new Date(in.readLong());
205+
}
197206
}
198207

199208
@Override
@@ -309,6 +318,12 @@ public void writeToParcel(Parcel dest, int flags) {
309318
dest.writeByte((byte) 1);
310319
dest.writeInt(totalVisitsLeft);
311320
}
321+
if (validityTo == null) {
322+
dest.writeByte((byte) 0);
323+
} else {
324+
dest.writeByte((byte) 1);
325+
dest.writeLong(validityTo.getTime());
326+
}
312327
}
313328

314329
@Override
@@ -421,6 +436,11 @@ public Integer getTotalVisitsLeft() {
421436
return totalVisitsLeft;
422437
}
423438

439+
@Nullable
440+
public Date getValidityTo() {
441+
return validityTo;
442+
}
443+
424444
public enum Status {
425445
IDLE, ACTIVE, SUSPENDED, EXPIRED, READY
426446
}

claimManagement/src/main/java/org/openimis/imisclaims/usecase/FetchInsureeInquire.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,8 @@ private Policy toPolicy(@NonNull GetInsureeInquireQuery.Edge1 edge) {
100100
/* totalConsultationsLeft = */ product.maxNoConsultation(),
101101
/* totalDeliveriesLeft = */ product.maxNoDelivery(),
102102
/* totalSurgeriesLeft = */ product.maxNoSurgery(),
103-
/* totalVisitsLeft = */ product.maxNoVisits()
103+
/* totalVisitsLeft = */ product.maxNoVisits(),
104+
/* validityTo = */ policy.validityTo()
104105
);
105106
}
106107

0 commit comments

Comments
 (0)