Esempio n. 1
0
        public IIncomeTaxDiscountCalculator GetIncomeTaxCalculator(double salary)
        {
            if (salary <= IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.EXEMPT_RANGE).MAX_VALUE)
            {
                return(GetIncomeTaxFactory(IncomeTaxRangeTypes.EXEMPT_RANGE));
            }

            if (salary <= IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.FIRST_RANGE).MAX_VALUE)
            {
                return(GetIncomeTaxFactory(IncomeTaxRangeTypes.FIRST_RANGE));
            }

            if (salary <= IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.SECOND_RANGE).MAX_VALUE)
            {
                return(GetIncomeTaxFactory(IncomeTaxRangeTypes.SECOND_RANGE));
            }

            if (salary <= IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.THIRD_RANGE).MAX_VALUE)
            {
                return(GetIncomeTaxFactory(IncomeTaxRangeTypes.THIRD_RANGE));
            }
            else
            {
                throw new NotImplementedException();
            }
        }
Esempio n. 2
0
 public IncomeTaxExemptRange(IIncomeTaxFirstRange higherIncomeTaxRange) : base(higherIncomeTaxRange, IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.EXEMPT_RANGE))
 {
 }
Esempio n. 3
0
 public IncomeTaxThirdRange() : base(null, IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.THIRD_RANGE))
 {
 }
Esempio n. 4
0
 public IncomeTaxSecondRange(IIncomeTaxThirdRange higherIncomeTaxRange) : base(higherIncomeTaxRange, IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.SECOND_RANGE))
 {
 }
Esempio n. 5
0
 public IncomeTaxExemptRange() : base(IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.EXEMPT_RANGE))
 {
 }
Esempio n. 6
0
 public IncomeTaxSecondRange() : base(IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.SECOND_RANGE))
 {
 }
Esempio n. 7
0
 public IncomeTaxFirstRange(IIncomeTaxSecondRange higherIncomeTaxRange) : base(higherIncomeTaxRange, IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.FIRST_RANGE))
 {
 }
Esempio n. 8
0
 public IncomeTaxFirstRange() : base(IncomeTax.GetIncomeTax(IncomeTaxRangeTypes.FIRST_RANGE))
 {
 }