public async Task <IActionResult> Update(Trade trade)
        {
            try
            {
                if (Exists(trade.Code, trade.Id))
                {
                    ModelState.AddModelError("Code", "Já existe uma negociação cadastrada com este código.");
                }

                if (ModelState.IsValid)
                {
                    _context.Update(trade);

                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException)
            {
                //Log the error (uncomment ex variable name and write a log.
                ModelState.AddModelError("", "Unable to save changes. " +
                                         "Try again, and if the problem persists " +
                                         "see your system administrator.");
            }

            return(View(trade));
        }
Ejemplo n.º 2
0
        public async Task <int> AddTradeOffer(int traderId, TradeOffer tradeOffer)
        {
            var trader = await context.FindAsync <Trader>(traderId);

            await LoadEntity(trader);

            trader.TradeOffers.Add(tradeOffer);
            await context.SaveChangesAsync();

            return(tradeOffer.Id);
        }
Ejemplo n.º 3
0
        // GET: Stocks/Buy/:id
        public async Task <IActionResult> Buy(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var stockModel = await _context.Stocks
                             .FirstOrDefaultAsync(m => m.ID == id);

            var user = await _context.Accounts.FirstAsync();

            if (stockModel == null)
            {
                return(NotFound());
            }
            user.Balance      = Math.Round(user.Balance - stockModel.Price);
            stockModel.Price += Math.Round((new Random().NextDouble()) * (100 - -100) + -100);
            _context.Stocks.Update(stockModel);
            _context.Accounts.Update(user);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }