Skip to content

Commit

Permalink
Merge 3139947 into b7c8b99
Browse files Browse the repository at this point in the history
  • Loading branch information
rkodev committed Oct 19, 2020
2 parents b7c8b99 + 3139947 commit 7b62411
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 24 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
@@ -1,4 +1,4 @@
VERSION_NAME=2.0.2-SNAPSHOT
VERSION_NAME=2.0.3-SNAPSHOT
VERSION_CODE=2
GROUP=org.smartregister
POM_SETTING_DESCRIPTION=OpenSRP Client Immunization
Expand Down
Expand Up @@ -50,9 +50,9 @@ public static VaccineCondition init(String vaccineCategory, Condition conditionD
public abstract boolean passes(Date anchorDate, List<Vaccine> issuedVaccines);


protected boolean isWithinAge(Date anchorDate, Condition conditionData) {
protected boolean isWithinAge(Date anchorDate, Date vaccineDate, Condition conditionData) {
if (anchorDate != null && conditionData.age != null) {
Calendar baseDate = getDate(anchorDate, "+0d");
Calendar baseDate = getDate(vaccineDate, "+0d");
Calendar startDate = getDate(anchorDate, conditionData.age.get("from"));
Calendar endDate = conditionData.age.containsKey("to") ?
getDate(anchorDate, conditionData.age.get("to")) : getDate(new Date(), "+0d");
Expand Down
Expand Up @@ -43,32 +43,31 @@ public boolean passes(Date anchorDate, List<Vaccine> issuedVaccines) {
break;
}
}
if (comparisonVaccine == null) return false;

if (comparisonVaccine != null) {
Calendar comparisonDate = Calendar.getInstance();
VaccineSchedule.standardiseCalendarDate(comparisonDate);
comparisonDate = VaccineSchedule.addOffsetToCalendar(comparisonDate, value);
Calendar comparisonDate = Calendar.getInstance();
VaccineSchedule.standardiseCalendarDate(comparisonDate);
comparisonDate = VaccineSchedule.addOffsetToCalendar(comparisonDate, value);

Calendar vaccinationDate = Calendar.getInstance();
vaccinationDate.setTime(comparisonVaccine.getDate());
VaccineSchedule.standardiseCalendarDate(vaccinationDate);
Calendar vaccinationDate = Calendar.getInstance();
vaccinationDate.setTime(comparisonVaccine.getDate());
VaccineSchedule.standardiseCalendarDate(vaccinationDate);

switch (comparison) {
case EXACTLY:
result = comparisonDate.getTimeInMillis() == vaccinationDate.getTimeInMillis();
break;
case AT_LEAST:
result = comparisonDate.getTimeInMillis() >= vaccinationDate.getTimeInMillis();
break;
case AT_MOST:
result = comparisonDate.getTimeInMillis() <= vaccinationDate.getTimeInMillis();
break;
default:
break;
}
switch (comparison) {
case EXACTLY:
result = comparisonDate.getTimeInMillis() == vaccinationDate.getTimeInMillis();
break;
case AT_LEAST:
result = comparisonDate.getTimeInMillis() >= vaccinationDate.getTimeInMillis();
break;
case AT_MOST:
result = comparisonDate.getTimeInMillis() <= vaccinationDate.getTimeInMillis();
break;
default:
break;
}

return result && isWithinAge(anchorDate, conditionData);
return result && isWithinAge(anchorDate, comparisonVaccine.getDate(), conditionData);
}

public enum Comparison {
Expand Down

0 comments on commit 7b62411

Please sign in to comment.