public void SaveTransaction(NetPresentValueInputDto netPresentValueInputDto) { var transaction = _mapper.Map <Transaction>(netPresentValueInputDto); var transactionId = _transactionRepository.InsertTransaction(transaction).Result; foreach (var item in netPresentValueInputDto.CashFlows) { item.TransactionId = Convert.ToInt32(transactionId); } foreach (var item in netPresentValueInputDto.NetPresentValueResults) { item.TransactionId = Convert.ToInt32(transactionId); } var cashFlows = _mapper.Map <IEnumerable <CashFlow> >(netPresentValueInputDto.CashFlows); cashFlows.ToList().ForEach(c => { _cashFlowRepository.InsertCashFlow(c); }); var results = _mapper.Map <IEnumerable <NetPresentValue> >(netPresentValueInputDto.NetPresentValueResults); results.ToList().ForEach(r => { _netPresentValueRepository.InsertNetPresentValue(r); }); }
public IEnumerable <double> GetNetPresentValue(NetPresentValueInputDto netPresentValueInputDto) { var npvCalculator = _npvCalculatorFactory.Build(netPresentValueInputDto.DiscountRateType); var toBeCompute = _mapper.Map <NetPresentValueCalculationInputDto>(netPresentValueInputDto); var result = npvCalculator.Compute(toBeCompute); return(result); }
public IActionResult ComputeNetPresentValue([FromBody] NetPresentValueInputDto request) { var result = _netPresentValueService.GetNetPresentValue(request); return(Ok(result)); }
public IActionResult SaveNetPresentValue([FromBody] NetPresentValueInputDto netPresentValueInputDto) { _netPresentValueService.SaveTransaction(netPresentValueInputDto); return(Ok()); }