Esempio n. 1
0
 public void CalculateDiscount(IBenefitPerson person)
 {
     if (QualifiesForDiscount(person as IBenefitPerson))
     {
         ApplyDiscount(person as IBenefitPerson);
     }
 }
Esempio n. 2
0
        private void CalculateForIndividual(IBenefitPerson person, BenefitInfo benefitsSummary)
        {
            _benefitDiscountPolicy.CalculateDiscount(person);

            benefitsSummary.BaseAnnualCost       += person.Benefits.BaseAnnualCost;
            benefitsSummary.DiscountedAnnualCost += person.Benefits.DiscountedAnnualCost;
            benefitsSummary.DiscountApplied       = benefitsSummary.DiscountApplied || person.Benefits.DiscountApplied;
        }
Esempio n. 3
0
        private bool QualifiesForDiscount(IBenefitPerson person)
        {
            bool result = false;

            if (!string.IsNullOrWhiteSpace(person.FirstName) && person.FirstName.ToLower()[0] == 'a')
            {
                result = true;
            }

            return(result);
        }
Esempio n. 4
0
 private void ApplyDiscount(IBenefitPerson benefitEligiblePerson)
 {
     benefitEligiblePerson.Benefits.DiscountedAnnualCost = benefitEligiblePerson.Benefits.BaseAnnualCost * .9M;
     benefitEligiblePerson.Benefits.DiscountApplied      = true;
 }