public IActionResult MoneyTransferWithHavale([FromBody] HavaleDto havaleDto) { if (_accountService.GetAccountByNumber(havaleDto.ReceivingAccountId) == null) { return(BadRequest()); } else { var sendingAccount = _accountService.GetAccountByNumber(havaleDto.SendingAccountId); var receivingAccount = _accountService.GetAccountByNumber(havaleDto.ReceivingAccountId); if (havaleDto.Money != 0 && havaleDto.Money <= sendingAccount.Balance && receivingAccount.isActive == true) { sendingAccount.Balance -= havaleDto.Money; receivingAccount.Balance += havaleDto.Money; _accountService.Update(sendingAccount); _accountService.Update(receivingAccount); var transaction = new TransactionOnAccount(); transaction.ReceivingAccountId = havaleDto.ReceivingAccountId; transaction.SendingAccountId = havaleDto.SendingAccountId; transaction.TransactionTime = DateTime.Now; transaction.AmountOfMoney = havaleDto.Money; transaction.ProcessType = "mobil"; transaction.AccountId = sendingAccount.AccountId; _transactionOnAccountService.Add(transaction); return(Ok()); } return(BadRequest()); } }
public IActionResult MoneyTransferWithVirman([FromBody] VirmanDto virmanDto) { if (_accountService.GetAccountByNumber(virmanDto.ReceivingAccountId) == null) { return(BadRequest()); } else { var sendingAccount = _accountService.GetAccountByNumber(virmanDto.SendingAccountId); var receivingAccount = _accountService.GetAccountByNumber(virmanDto.ReceivingAccountId); if (virmanDto.Money != 0 && virmanDto.Money <= sendingAccount.Balance) { sendingAccount.Balance -= virmanDto.Money; receivingAccount.Balance += virmanDto.Money; _accountService.Update(sendingAccount); _accountService.Update(receivingAccount); var transaction = new TransactionOnAccount(); transaction.ReceivingAccountId = receivingAccount.AccountNumber + "/" + receivingAccount.AccountNo.ToString(); transaction.SendingAccountId = sendingAccount.AccountNumber + "/" + sendingAccount.AccountNo.ToString(); transaction.TransactionTime = DateTime.Now; transaction.AmountOfMoney = virmanDto.Money; transaction.ProcessType = "mobil"; transaction.AccountId = sendingAccount.AccountId; _transactionOnAccountService.Add(transaction); return(Ok()); } return(BadRequest()); } }
public void Update(TransactionOnAccount transactionOnAccount) { _transactionOnAccountDal.Update(transactionOnAccount); }
public void Add(TransactionOnAccount transactionOnAccount) { _transactionOnAccountDal.Add(transactionOnAccount); }