private async Task <DebtModel> EnrichDebtModel(DebtModel debt, DebtDto debtDto) { var customerDto = await customerService.GetCustomerByIdAsync(debtDto.CustomerId).ConfigureAwait(false); var agreemnetDto = await agreementService.GetAgreementByIdAsync(debtDto.AgreementId).ConfigureAwait(false); debt.CustomerINN = customerDto.INN; debt.CustomerName = customerDto.Name; debt.AgreementName = agreemnetDto.Name; debt.Postponement = agreemnetDto.Postponement; debt.Total = debt.StateDuty + debt.Fine + debt.StateDuty + debt.Penalties + debt.InterestAmount; debt.TotalExacted = debt.StateDutyExacted + debt.FineExacted + debt.StateDutyExacted + debt.PenaltiesExacted + debt.InterestAmountExacted; var statusDto = debtStatus.GetDebtStatusByDebtId(debt.Id); var status = statusDto.Select(p => mapper.Map <DebtStatusDto, DebtStatusModel>(p)).ToList(); debt.DebtStatuses = status ?? new List <DebtStatusModel>(); var debtPaidDto = debtPaid.GetDebtPaidByDebtId(debt.Id); debt.DebtPaid = GetDebtPaidModel(debtPaidDto.Sum, debt); var storesDto = debtStore.GetDebtStoreByDebtId(debt.Id); var stores = storesDto.Select(p => mapper.Map <DebtStoreDto, DebtStoreModel>(p)).ToList(); debt.DebtStores = stores ?? new List <DebtStoreModel>(); debt.DebtClaim = new DebtClaimModel { DebtId = 1, ClaimName = "ОД +%", DateClaimStart = DateTime.Now, DateClaimEnd = DateTime.Now, NumberClaim = "1", PenaltyRate = 0.15, RefinancingRate = 9.5 }; return(debt); }