Exemple #1
0
        private void InitTestsTranscations()
        {
            var transaction = new BankTransaction(_context);

            //  some tests data
            for (int i = 0; i < 10; i += 1)
            {
                int amount = 50;
                var from   = _context.BankUsers.Where(x => x.Id == i.ToString()).FirstOrDefault();
                var to     = _context.BankUsers.Where(x => x.Id == (i + 1).ToString()).FirstOrDefault();
                transaction.Send(from, to, amount * 1);
            }

            for (int i = 0; i < 10; i += 1)
            {
                int amount = 50;
                var to     = _context.BankUsers.Where(x => x.Id == i.ToString()).FirstOrDefault();
                var from   = _context.BankUsers.Where(x => x.Id == (i + 1).ToString()).FirstOrDefault();
                transaction.Send(from, to, amount * 1);
            }
            for (int i = 0; i < 10; i += 4)
            {
                int amount = 250;
                var from   = _context.BankUsers.Where(x => x.Id == i.ToString()).FirstOrDefault();
                var to     = _context.BankUsers.Where(x => x.Id == (i + 1).ToString()).FirstOrDefault();
                transaction.Send(from, to, amount * 1);
            }

            for (int i = 9; i > -1; i -= 1)
            {
                int amount = 100;
                var from   = _context.BankUsers.Where(x => x.Id == i.ToString()).FirstOrDefault();
                var to     = _context.BankUsers.Where(x => x.Id == (i + 1).ToString()).FirstOrDefault();
                transaction.Send(from, to, amount * 2);
            }
        }
Exemple #2
0
        public IActionResult Ask(string Id, int amount)
        {
            var to   = _userManager.GetUserAsync(HttpContext.User).Result;
            var from = _userManager.FindByIdAsync(Id).Result;

            if (from == null)
            {
                throw new Exception("user nor exist");
            }

            var transaction = new BankTransaction(_context);

            var result = transaction.Send(from, to, amount);

            if (result != TransactionResult.Done)
            {
                ModelState.AddModelError("error", result.ToString());
                return(View(from));
            }
            return(RedirectToAction("Index", "Info"));
        }