public IHttpActionResult GetPaymentPlan(CalculationCreditModelForPaymentPlan request) { try { var credit = creditService.Get(request.CreditId); validationService.ValidateSum(request.Sum, credit.MinSum, credit.MaxSum, ModelState); validationService.ValidateMonthCount(request.MonthCount, credit.MinMonthPeriod, credit.MaxMonthPeriod, ModelState); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var payments = calculationCreditService .CalculatePaymentPlan(request.Sum, credit.PercentRate, request.MonthCount, request.StartDate); var viewPayments = Mapper.Map <IEnumerable <DomainCreditPaymentPlanItem>, List <CreditPaymentPlanViewModel> >(payments); return(Ok(viewPayments)); } catch (BankClientException ex) { return(BadRequest(ex.Message)); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult GetPaymentPlan(CalculationCreditModelForPaymentPlan request) { try { var credit = creditService.Get(request.CreditId); validationService.ValidateSum(request.Sum, credit.MinSum, credit.MaxSum, ModelState); validationService.ValidateMonthCount(request.MonthCount, credit.MinMonthPeriod, credit.MaxMonthPeriod, ModelState); if (!ModelState.IsValid) { return BadRequest(ModelState); } var payments = calculationCreditService .CalculatePaymentPlan(request.Sum, credit.PercentRate, request.MonthCount, request.StartDate); var viewPayments = Mapper.Map<IEnumerable<DomainCreditPaymentPlanItem>, List<CreditPaymentPlanViewModel>>(payments); return Ok(viewPayments); } catch (BankClientException ex) { return BadRequest(ex.Message); } catch (Exception ex) { return InternalServerError(ex); } }