public Accounting UpdateAccountingById(int accountingId, AccountingVM accounting)
        {
            var _accounting = _context.Accounting.FirstOrDefault(n => n.Id == accountingId);

            if (_accounting != null)
            {
                _accounting.senderAccountNumber   = accounting.senderAccountNumber;
                _accounting.receiverAccountNumber = accounting.receiverAccountNumber;
                _accounting.amount = accounting.amount;

                _context.SaveChanges();
            }
            return(_accounting);
        }
Пример #2
0
        public IActionResult UpdateAccountingById(int id, [FromBody] AccountingVM accounting)
        {
            var updatedAccounting = _accountService.UpdateAccountingById(id, accounting);

            return(Ok(updatedAccounting));
        }
Пример #3
0
 public IActionResult AddAccount([FromBody] AccountingVM accounting)
 {
     _accountService.AddAccounting(accounting);
     return(Ok());
 }
        public void AddAccounting(AccountingVM accounting)
        {
            //Logic
            #region logic
            var _accounting = new Accounting()
            {
                senderAccountNumber   = accounting.senderAccountNumber,
                receiverAccountNumber = accounting.receiverAccountNumber,
                amount = accounting.amount
            };

            int sender   = accounting.senderAccountNumber;
            int receiver = accounting.receiverAccountNumber;
            int amount   = accounting.amount;

            var isSenderValid   = _context.Accounts.Where(x => x.accountNumber == sender).FirstOrDefault();
            var isReceiverValid = _context.Accounts.Where(x => x.accountNumber == receiver).FirstOrDefault();

            bool senderOK   = false;
            bool receiverOK = false;
            bool balanceOK  = false;
            bool currencyOK = false;

            if (isSenderValid.accountNumber == sender)
            {
                senderOK = true;
            }
            else
            {
                NotFoundSender(sender);
            }
            if (isReceiverValid.accountNumber == receiver)
            {
                receiverOK = true;
            }
            else
            {
                NotFoundReceiver(receiver);
            }
            if (isSenderValid.currencyCode == isReceiverValid.currencyCode)
            {
                currencyOK = true;
            }
            else
            {
                NotFoundCurrency(isReceiverValid.currencyCode);
            }
            if (isSenderValid.balance >= amount)
            {
                balanceOK               = true;
                isSenderValid.balance   = isSenderValid.balance - amount;
                isReceiverValid.balance = isReceiverValid.balance + amount;
            }
            else
            {
                NotFoundBalance(sender);
            }
            #endregion
            if (senderOK && receiverOK && currencyOK && balanceOK)
            {
                _context.Add(_accounting);
                _context.SaveChanges();
            }
            else
            {
                NotFound();
            }
        }