public async Task <ActionResult <string> > GetBySku(string sku) { TotalTransactionDTO totalTransaction = null; try { totalTransaction = await _transactionsService.GetTotalTransactionAsync(sku); return(JsonConvert.SerializeObject(totalTransaction)); } catch (Exception err) { _logger?.LogError("Transactions controller exception: " + err.Message); return(null); } }
public async Task <TotalTransactionDTO> GetTotalTransactionAsync(string sku) { string currency = _config.GetValue <string>("Currency"); var transactions = await _transactionsRepository.GetAsync().ConfigureAwait(false); var rates = await _ratesRepository.GetAsync().ConfigureAwait(false); var transactionsBySku = _transactionFilterService.FilterBySku(transactions, sku); var transactionsBySkuToCurrency = _transactionBusinessService.ExchangeToCurrency(transactionsBySku, rates, currency); TotalTransactionDTO totalTransactionDTO = new TotalTransactionDTO(); totalTransactionDTO.Sku = sku; totalTransactionDTO.Currency = currency; totalTransactionDTO.TotalAmount = _transactionBusinessService.GetTotalAmount(transactionsBySkuToCurrency); totalTransactionDTO.TransactionsAmount = transactionsBySku.ToAmounts(); return(totalTransactionDTO); }