Example #1
0
        protected override void When(object @event)
        {
            switch (@event)
            {
            case Events.ExpenditureAdded e:
                ParentId = new DailyBudgetId(e.DailyBudgetId);
                Id       = new OutgoId(e.ExpenditureId);
                Amount   = Amount.FromDecimal(e.Amount);
                break;

            case Events.ExpenditureAmountChanged e:
                Amount = Amount.FromDecimal(e.Amount);
                break;

            case Events.ExpenditureDescriptionChanged e:
                Description = e.Description;
                break;
            }
        }
Example #2
0
        protected override void When(object @event)
        {
            switch (@event)
            {
            case Events.OutgoAddedToDailyBudget e:
                ParentId    = new DailyBudgetId(e.DailyBudgetId);
                Id          = new OutgoId(e.OutgoId);
                Amount      = Amount.FromDecimal(e.Amount);
                Description = new Description(e.Description);
                break;

            case Events.OutgoAmountChanged e:
                Amount = Amount.FromDecimal(e.Amount);
                break;

            case Events.OutgoDescriptionChanged e:
                Description = new Description(e.Description);
                break;
            }
        }
Example #3
0
        protected override void When(object @event)
        {
            switch (@event)
            {
            case Events.DailyBudgetCreated e:
                ParentId  = new DailyBudgetId(e.Id);
                Id        = new SnapshotId(Guid.NewGuid());
                Daily     = DailyAmount.FromDecimal(0m);
                Available = Available.FromDecimal(0m);
                break;

            case Events.PeriodAddedToDailyBudget e:
                period = Period.Create(e.Start, e.End);
                SetPeriod(e.EntryDate);
                break;

            case Events.PeriodStartChanged e:
                period = Period.Create(e.Start, period.ToB);
                SetPeriod(e.EntryDate);
                break;

            case Events.PeriodEndChanged e:
                period = Period.Create(period.FromA, e.End);
                SetPeriod(e.EntryDate);
                break;

            case Events.IncomeAddedToDailyBudget e:
                SetTotalIncome(Amount.FromDecimal(e.TotalIncome), e.EntryDate);
                break;

            case Events.IncomeRemoved e:
                SetTotalIncome(Amount.FromDecimal(e.TotalIncome), e.EntryDate);
                break;

            case Events.IncomeAmountChanged e:
                SetTotalIncome(Amount.FromDecimal(e.TotalIncome), e.EntryDate);
                break;

            case Events.OutgoAddedToDailyBudget e:
                SetTotalOutgo(Amount.FromDecimal(e.TotalOutgo), e.EntryDate);
                break;

            case Events.OutgoRemoved e:
                SetTotalOutgo(Amount.FromDecimal(e.TotalOutgo), e.EntryDate);
                break;

            case Events.OutgoAmountChanged e:
                SetTotalOutgo(Amount.FromDecimal(e.TotalOutgo), e.EntryDate);
                break;

            case Events.ExpenditureAdded e:
                SetTotalExpenditures(Amount.FromDecimal(e.TotalExpenditure), e.EntryDate);
                break;

            case Events.ExpenditureAmountChanged e:
                SetTotalExpenditures(Amount.FromDecimal(e.TotalExpenditure), e.EntryDate);
                break;

            case Events.SnapshotChanged e:
                Daily     = DailyAmount.FromDecimal(e.Daily);
                Available = Available.FromDecimal(e.Available);
                break;
            }
        }