NextPaymentCycleSummary.java
package uk.gov.dhsc.htbhf.claimant.message.processor;
import lombok.Builder;
import lombok.Data;
/**
* A summary of factors that can affect the next payment cycle.
*/
@Data
@Builder
public class NextPaymentCycleSummary {
public static final NextPaymentCycleSummary NO_CHILDREN = NextPaymentCycleSummary.builder().build();
private int numberOfChildrenTurningOne;
private int numberOfChildrenTurningFour;
private boolean childrenUnderFourPresentAtEndOfCycle;
public boolean hasChildrenTurningFour() {
return numberOfChildrenTurningFour > 0;
}
public boolean youngestChildTurnsFour() {
return hasChildrenTurningFour() && !childrenUnderFourPresentAtEndOfCycle;
}
public boolean hasMultipleChildrenTurningFour() {
return numberOfChildrenTurningFour > 1;
}
public boolean hasChildrenTurningOne() {
return numberOfChildrenTurningOne > 0;
}
public boolean hasMultipleChildrenTurningOne() {
return numberOfChildrenTurningOne > 1;
}
public int getNumberOfChildrenTurningOneOrFour() {
return numberOfChildrenTurningOne + numberOfChildrenTurningFour;
}
}