Как сохранить срок оплаты за каждый месяц или квартал платежа по кредиту

#c# #asp.net-core

#c# #asp.сетевое ядро

Вопрос:

Частота платежей может быть:

 1 = Monthly 2 = Quarterly 3 = Yearly  

У одного LoanPayment их много LoanPaymentDetail .

Я хочу использовать PaymentCount PaymentFrequency и DueDate войти LoanPayment , чтобы войти DueDate LoanPaymentDetail .

Например, когда PaymentMentCount = 4, PaymentFrequency = 1 (ежемесячно) и DueDate = 29-01-2022 , он должен добавлять DueDate в течение 4 месяцев, если этот конкретный срок не превышает 29, он использует ближайшую дату (28).

Он делает то же самое, если выбраны Ежеквартальный и ежегодный.

Это то, что я делал до сих пор.

 public async Tasklt;LoanPayment. AddLoanPayment(LoanPaymentCreateDto loanPaymentCreateDto) {  var mapper = new EntityMapper();  var loanPaymentDetail = new LoanPaymentDetail();  var loanPayment = mapper.FromLoanPaymentDtoToPayment(loanPaymentCreateDto);  wait _unitOfWork.LoanPaymentRepository.Insert(loanPayment);  // This saves loan Payment  await _unitOfWork.SaveChangesAsync();   // Now to loop LoanPaymentDetail  for (int i = 1, i lt;= (byte)loanPayment.PaymentFrequency)  {  loanPaymentDetail.LoanPaymentId = loanPayment.Id;  loanPaymentDetail.DueDate = ???  loanPaymentDetail.AmountPayable = loanPayment.Amount / AmountPayable.PaymentCount;  wait _unitOfWork.LoanPaymentDetailRepository.Insert(loanPaymentDetail);  // This saves loan Payment Detail  await _unitOfWork.SaveChangesAsync();  }  return loanPayment; }  

Как мне достичь своей цели?

Заранее спасибо.

Комментарии:

1. Какие решения вы пробовали?

2. Можете ли вы объяснить бизнес-логику сохранения срока погашения платежей по кредиту? Я не совсем ясно выразился.