public Transaction AddTransaction(AuctionPrize prize) { Transaction transaction = new Transaction(); transaction.Money = prize.CurrentBid; transaction.ManagerId = prize.Auction.ManagerId; transaction.ParticipantId = prize.ParticipantId; transaction.Paid = false; transaction.Description = "Winning " + prize.Name + "from " + prize.Auction.Name + "."; context.SaveChanges(); return(transaction); }
public ActionResult AddItem([Bind(Include = "AuctionPrizeId,Name,Description,ActualValue,MinimumBid,BidIncrement,CurrentBid,Picture,Participant,AuctionId,WinnerId,Category,Paid, CustomBid")] AuctionPrize auctionPrize, int id) { Auction auction = context.Auctions.FirstOrDefault(a => a.AuctionId == id); auctionPrize.AuctionId = auction.AuctionId; auctionPrize.CurrentBid = 0; auctionPrize.CustomBid = 0; auctionPrize.TopParticipant = null; auctionPrize.ParticipantId = null; context.AuctionPrizes.Add(auctionPrize); context.SaveChanges(); return(RedirectToAction("Continue", new { id = auctionPrize.AuctionId })); }
public ActionResult Bid([Bind(Include = "AuctionPrizeId,ActualValue,MinimumBid,BidIncrement,CurrentBid,Description,TopParticipant,Category,WinnerId,AuctionId,Participant,Paid,CustomBid")] AuctionPrize auctionPrize, int id) { try { var currentUserId = User.Identity.GetUserId(); var auctionPrizeToEdit = context.AuctionPrizes.FirstOrDefault(a => a.AuctionPrizeId == id); Participant participant = context.Participants.FirstOrDefault(p => p.ApplicationUserId == currentUserId); Auction auction = context.Auctions.FirstOrDefault(u => u.AuctionId == auctionPrizeToEdit.AuctionId); Participant outbidParticipant = context.Participants.FirstOrDefault(o => o.ParticipantId == auctionPrizeToEdit.TopParticipant); if (auctionPrize.CustomBid == 0) { if (auctionPrizeToEdit.CurrentBid == 0) { auctionPrizeToEdit.CurrentBid += auctionPrizeToEdit.MinimumBid; auction.TotalRaised += auctionPrizeToEdit.MinimumBid; } else { auctionPrizeToEdit.CurrentBid += auctionPrizeToEdit.BidIncrement; auction.TotalRaised += auctionPrizeToEdit.BidIncrement; ParticipantAction participantActionOutBid = new ParticipantAction(); participantActionOutBid.ParticipantId = auctionPrizeToEdit.TopParticipant; participantActionOutBid.Action = "You have been outbid on " + auctionPrizeToEdit.Name + "."; participantActionOutBid.Time = DateTime.Now; context.ParticipantActions.Add(participantActionOutBid); } } else if (auctionPrize.CustomBid != 0 && auctionPrize.CustomBid >= auctionPrizeToEdit.BidIncrement + auctionPrizeToEdit.CurrentBid) { if (auctionPrizeToEdit.CurrentBid == 0) { auctionPrizeToEdit.CurrentBid = auctionPrize.CustomBid; auction.TotalRaised += auctionPrize.CustomBid; auctionPrizeToEdit.CustomBid = 0; } else { auctionPrizeToEdit.CurrentBid = auctionPrize.CustomBid; auction.TotalRaised += auctionPrize.CustomBid; auctionPrizeToEdit.CustomBid = 0; ParticipantAction participantActionOutBid = new ParticipantAction(); participantActionOutBid.ParticipantId = auctionPrizeToEdit.TopParticipant; participantActionOutBid.Action = "You have been outbid on " + auctionPrizeToEdit.Name + "."; participantActionOutBid.Time = DateTime.Now; context.ParticipantActions.Add(participantActionOutBid); } } else { ModelState.AddModelError("", "You must bid more than the minimum bid increment"); return(View(auctionPrizeToEdit)); } ParticipantAction participantActionBid = new ParticipantAction(); participantActionBid.ParticipantId = participant.ParticipantId; participantActionBid.Action = "You have bid $" + auctionPrizeToEdit.CurrentBid + " on " + auctionPrizeToEdit.Name + "."; participantActionBid.Time = DateTime.Now; context.ParticipantActions.Add(participantActionBid); AddDataPoint(auction); auctionPrizeToEdit.TopParticipant = participant.ParticipantId; context.SaveChanges(); return(RedirectToAction("Participate", "Auction", new { id = auctionPrizeToEdit.AuctionId })); } catch { return(RedirectToAction("Index", "Participant")); } }
public ActionResult Bid(int id) { AuctionPrize auctionprize = context.AuctionPrizes.FirstOrDefault(a => a.AuctionPrizeId == id); return(View(auctionprize)); }
public ActionResult AddItem(int id) { AuctionPrize auctionPrize = new AuctionPrize(); return(View(auctionPrize)); }