serviceAgreementExpiry property
Returns the service agreement expiry based on the existing service agreement details.
Will return null if there is no service agreement, or if there is
no begin date or terms.
Implementation
DateTime? get serviceAgreementExpiry {
if (hasServiceAgreement != true) return null;
final beginDate = serviceAgreementBeginDate != null
? Jiffy.parseFromDateTime(serviceAgreementBeginDate!)
: null;
if (beginDate == null) return null;
switch (serviceAgreementTerm) {
case null:
return null;
case ServiceAgreementTerm.annual:
return beginDate.add(years: 1).dateTime;
case ServiceAgreementTerm.semiAnnual:
return beginDate.add(months: 6).dateTime;
case ServiceAgreementTerm.custom:
return beginDate
.add(
months: serviceAgreementTermMonths ?? 0,
days: serviceAgreementTermDays ?? 0,
)
.dateTime;
}
}