public async Task <IViewComponentResult> InvokeAsync(int id) { var bestBid = await _itemService.GetBestBidAsync(id); NewBidViewModel model = _mapper.Map <NewBidDTO, NewBidViewModel> (bestBid); return(View(model)); }
public ActionResult Create(NewBidViewModel bid) { if (this.ModelState.IsValid) { var auction = this.service.GetAll().FirstOrDefault(a => a.Id == bid.AuctionId); this.service.PlaceBid(auction, bid.BidAmount); } return(this.RedirectToAction("Index", "Auctions")); }
public async Task <IActionResult> CreateAuctionBid(NewBidViewModel model) { if (!ModelState.IsValid) { ModelState.AddModelError("", "Niepoprawne dane."); return(RedirectToAction("Item", "Item", new { id = model.ItemId, area = "" })); } NewBidDTO dto = _mappper.Map <NewBidViewModel, NewBidDTO>(model); string userId = User.FindFirst(ClaimTypes.NameIdentifier).Value; string username = User.FindFirst(ClaimTypes.Name).Value; dto.Username = username; await _itemService.AddBidToItemAsync(dto, userId); return(RedirectToAction("Index", "Home", new { area = "" })); }
// GET: Bids/Create?AuctionId= public ActionResult Create(int auctionId) { var auction = service.GetAll().FirstOrDefault(a => a.Id == auctionId); if (auction == null) { return(this.HttpNotFound()); } var newBidViewModel = new NewBidViewModel { AuctionTitle = auction.Title, AuctionDescription = auction.Description, StartPrice = auction.StartPrice, CurrentPrice = auction.CurrentPrice, BidAmount = Math.Max(auction.StartPrice, auction.CurrentPrice) + 1 }; return(View(newBidViewModel)); }
public JsonResult Bid(NewBidViewModel bidViewModel) { var json = new JsonResult(); if (bidViewModel.BidAmount == 0) { json.Data = new { success = false, message = "No bid amount specified." }; return(json); } var newBid = new Bid(); newBid.ProductId = bidViewModel.ProductId; newBid.BidderId = bidViewModel.BidderId; newBid.BidAmount = bidViewModel.BidAmount; var lastBidAmount = BidServices.Instance.GetTotalLastBidAmount(bidViewModel.ProductId); if (lastBidAmount > 0) { newBid.TotalBidAmount = lastBidAmount + bidViewModel.BidAmount; } else { newBid.TotalBidAmount = bidViewModel.BidAmount + bidViewModel.ActualAmount; } var result = BidServices.Instance.AddBid(newBid); if (result) { json.Data = new { success = true } } ; else { json.Data = new { success = false, message = "Can't add bid!" } }; return(json); }