public override Period Calculate(DateTime caseServiceDate, PolicyVersion policyVersion) { if (!policyVersion.CoversDate(caseServiceDate)) { return(Period.Forever()); } var period = Period.Between ( policyVersion.PolicyFrom, policyVersion.PolicyFrom.AddYears(1).AddDays(-1) ); while (!period.Contains(caseServiceDate)) { period = Period.Between ( period.From.AddYears(1), period.From.AddYears(2).AddDays(-1) ); } return(period); }
public abstract Period Calculate(DateTime caseServiceDate, PolicyVersion policyVersion);
public override Period Calculate(DateTime caseServiceDate, PolicyVersion policyVersion) { return(Period.Forever()); }
public override Period Calculate(DateTime caseServiceDate, PolicyVersion policyVersion) { return(Period.Yearly(caseServiceDate.Year)); }
public LimitsPolicy(PolicyVersion policyVersion, ILimitConsumptionContainerRepository limitConsumptionContainers) { _policyVersion = policyVersion; _limitConsumptionContainers = limitConsumptionContainers; }
public CoverageCheckPolicy(PolicyVersion policyAtServiceDate) { this.policyAtServiceDate = policyAtServiceDate; }
public CoPaymentPolicy(PolicyVersion policyAtServiceDate) { this.policyAtServiceDate = policyAtServiceDate; }