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)); }
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); }
// 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))); }