main
 1using System;
 2using solidware.financials.windows.ui.views.controls;
 3using utility;
 4
 5namespace solidware.financials.windows.ui.presenters
 6{
 7    public class ProvincialTaxesViewModel : ObservablePresenter<FederalTaxesViewModel>
 8    {
 9        public ProvincialTaxesViewModel(Guid id)
10        {
11            Id = id;
12            Taxes = Money.Null;
13        }
14
15        public Guid Id { get; private set; }
16        public Observable<Money> Taxes { get; set; }
17
18        public void ApplyTaxesTo(Money totalIncome)
19        {
20            Taxes.Value = CalculateFederalTaxesFor(totalIncome);
21        }
22
23        public decimal CalculateFederalTaxesFor(decimal totalIncome)
24        {
25            return totalIncome.multiply_by(0.10m);
26        }
27    }
28}