コード例 #1
0
 public RecalculateBudgetJob(
     IBudgetRepository budgetRepository,
     ICommissionCalculationService commissionCalculationService)
 {
     _budgetRepository             = budgetRepository;
     _commissionCalculationService = commissionCalculationService;
 }
コード例 #2
0
        public async Task CalculateTotalCost(ICommissionCalculationService commissionCalculationService)
        {
            var employeeCostTotal = _employeeCosts.Sum(i => i.Cost.Amount);
            var extraCostTotal    = _extraCosts.Sum(i => i.Cost.Amount);

            var budgetPrice = new Price(employeeCostTotal + extraCostTotal, "PLN");

            var commission = await commissionCalculationService.CalculateCommissionCostAsync(_projectId, budgetPrice);

            _totalCost = new Price(budgetPrice.Amount + commission.Amount, "PLN");

            AddDomainEvent(new BudgetTotalCostCalculatedEvent(Id, _totalCost));
        }