private async Task <IEnumerable <TransactionDoc> > GetTransactionsForAccount(Guid id, int year, int month) { var bankAccount = await _bankAccountRepository.GetAccount(id); if (bankAccount != null) { return(bankAccount.Transactions.Where(t => { var paymentDate = t.PaymentDate.ToLocalTime(); return paymentDate.Year.Equals(year) && paymentDate.Month.Equals(month); })); } var creditAccount = await _creditAccountRepository.GetAccount(id); if (creditAccount != null) { return(creditAccount.Transactions.Where(t => { var paymentDate = t.PaymentDate.ToLocalTime(); return paymentDate.Year.Equals(year) && paymentDate.Month.Equals(month); })); } return(new List <TransactionDoc>()); }
public async Task <BankAccountDto> Get(Guid id) { var account = await _accountRepository.GetAccount(id) ?? new BankAccountDoc(); var result = AutoMapper.Mapper.Map <BankAccountDto>(account); return(result); }
/// <inheritdoc /> public void Deposit(string accountNumber, decimal value) { try { var account = _repository.GetAccount(accountNumber).ToBllAccount(); account.Deposit(value); _repository.UpdateAccount(account.ToDtoAccount()); } catch (Exception ex) { throw new BankAccountServiceException("Some error occuried in deposit operation.", ex); } }
public async Task <bool> UpdateAccount(Guid accountId) { var account = await _accountRepository.GetAccount(accountId); var provider = await _providerRepository.GetProvider(account.ProviderId); return(await ProcessProvider(provider)); }
public async Task <BankAccountModel> GetAccount(string accountNumber) { try { return(await _bankAccountRepository.GetAccount(accountNumber)); } catch (Exception ex) { ex.Log(); return(null); } }
public async Task <IActionResult> GetTransactionsForAccount(String accountId, [FromQuery(Name = "year")] int year, [FromQuery(Name = "month")] int month) { IEnumerable <TransactionDoc> transactions = null; var bankAccount = await _bankAccountRepository.GetAccount(accountId); if (bankAccount != null) { transactions = await GetTransactionsForBankAccount(accountId, year, month); } var creditAccount = await _creditAccountRepository.GetCard(accountId); if (creditAccount != null) { transactions = await GetTransactionsForCreditAccount(accountId, year, month); } var result = AutoMapper.Mapper.Map <IEnumerable <TransactionDto> >(transactions); return(Ok(result)); }
public BankAccount GetAccount(int id) { return(_repository.GetAccount(id)); }