public ActionResult DeleteConfirmed(int id) { LastBidder lastBidder = db.LastBidders.Find(id); db.LastBidders.Remove(lastBidder); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "IdLastBid,IdAuction,IdUser,Status_")] LastBidder lastBidder) { if (ModelState.IsValid) { db.Entry(lastBidder).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.IdUser = new SelectList(db.AspNetUsers, "Id", "FirstName", lastBidder.IdUser); ViewBag.IdAuction = new SelectList(db.Auctions, "IdAuction", "productName", lastBidder.IdAuction); return(View(lastBidder)); }
// GET: LastBidders/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } LastBidder lastBidder = db.LastBidders.Find(id); if (lastBidder == null) { return(HttpNotFound()); } return(View(lastBidder)); }
// GET: LastBidders/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } LastBidder lastBidder = db.LastBidders.Find(id); if (lastBidder == null) { return(HttpNotFound()); } ViewBag.IdUser = new SelectList(db.AspNetUsers, "Id", "FirstName", lastBidder.IdUser); ViewBag.IdAuction = new SelectList(db.Auctions, "IdAuction", "productName", lastBidder.IdAuction); return(View(lastBidder)); }
public void Send(int IdAuction) { String userEmail = Context.User.Identity.Name; Model1 db = new Model1(); var auction = db.Auctions.Find(IdAuction); var user = db.AspNetUsers.SingleOrDefault(a => a.Email == userEmail); lock (mutex.locky) { if (auction.stage != "OPEN") { return; } if (auction.LastBidders.Count == 0) { if (user.numOfTokens < (auction.price + (long)auction.priceChange)) { Clients.All.tokenswarning(userEmail); return; } user.numOfTokens -= (auction.price + (long)auction.priceChange); auction.priceChange += 1; LastBidder lastBidder = new LastBidder(); lastBidder.AspNetUser = user; lastBidder.Auction = auction; lastBidder.Status_ = auction.stage; db.LastBidders.Add(lastBidder); } else { LastBidder lastBidder = db.LastBidders.SingleOrDefault(a => a.Auction.IdAuction == IdAuction); if (lastBidder.AspNetUser.Email == userEmail) { if (user.numOfTokens == 0) { Clients.All.tokenswarning(userEmail); return; } user.numOfTokens -= 1; auction.priceChange += 1; } else { if (user.numOfTokens < (auction.price + (long)auction.priceChange)) { Clients.All.tokenswarning(userEmail); return; } user.numOfTokens -= (auction.price + (long)auction.priceChange); lastBidder.AspNetUser.numOfTokens += (auction.price + (long)auction.priceChange - 1); auction.priceChange += 1; Clients.All.tokens(lastBidder.AspNetUser.numOfTokens, lastBidder.AspNetUser.Email); db.Entry(lastBidder.AspNetUser).State = EntityState.Modified; lastBidder.AspNetUser = user; db.Entry(lastBidder).State = EntityState.Modified; } } if (auction.duration < 10L) { auction.duration = 10L; } db.Entry(user).State = EntityState.Modified; db.Entry(auction).State = EntityState.Modified; Bid bid = new Bid(); bid.Auction = auction; bid.AspNetUser = user; bid.Date = DateTime.Now; db.Bids.Add(bid); db.SaveChanges(); TimeSpan time = TimeSpan.FromSeconds(auction.duration); String timeS = time.ToString(@"dd\:hh\:mm\:ss"); Clients.All.timerTick(auction.IdAuction, auction.stage, timeS, userEmail, (auction.price + auction.priceChange)); Clients.All.tokens(user.numOfTokens, userEmail); } }