private DisplayAuctionModel InitDisplayAuctionModel(Auction auction) { var model = new DisplayAuctionModel { Id = auction.Id, Name = auction.Name, Description = auction.Description, Price = auction.Price, Image = "data:image/png;base64," + Convert.ToBase64String(auction.Image, 0, auction.Image.Length) }; var expiresAt = auction.ExpiresAt != DateTime.MinValue ? auction.ExpiresAt : DateTime.MaxValue; var timeLeft = expiresAt - DateTime.Now; var topBid = _bidRepository.GetTopBidForAuction(auction.Id); if (topBid != null) { var highestBidder = _userRepository.GetById(topBid.UserId); model.HighestBidder = highestBidder.Username; } model.H = timeLeft.Hours; model.M = timeLeft.Minutes; model.S = timeLeft.Seconds; model.ExpiresAt = expiresAt; return(model); }
public void StartAuction(DisplayAuctionModel model) { MarkExpiredAsCompleted(); var auction = _auctionRepository.GetById(model.Id); auction.ExpiresAt = DateTime.Now.AddSeconds(auction.Duration); auction.StatusId = _auctionStatusRepository.GetByType("OPENED").Id; _auctionRepository.Save(auction); }
public ActionResult Start(DisplayAuctionModel model) { logger.Info("Starting auction " + model.Id); _auctionBl.StartAuction(model); return(RedirectToAction("ShowReady")); }
public void DeleteAuction(DisplayAuctionModel model) { var auction = _auctionRepository.GetById(model.Id); _auctionRepository.Remove(auction); }
public ActionResult Delete(DisplayAuctionModel model) { logger.Info("Deleting auction " + model.Id); _auctionBl.DeleteAuction(model); return(RedirectToAction("ShowReady")); }