public ActionResult MakeOffer(MakeOfferCommand command) { try { if (ModelState.IsValid) { var handler = new MakeOfferCommandHandler(_context); command.BuyerUserId = User.Identity.GetUserId(); if (!handler.Handle(command)) { ModelState.AddModelError("", "You already placed an offer."); } else { return(RedirectToAction("Index")); } } } catch (Exception ex) { ModelState.AddModelError("", "Adding offer failed."); } var property = _context.Properties.Find(command.PropertyId); MakeOfferViewModel model = new MakeOfferViewModel { PropertyId = property.Id, PropertyType = property.PropertyType, StreetName = property.StreetName, Offer = property.SuggestedAskingPrice }; PropertiesViewModel m = new PropertiesViewModel { Search = "", Properties = new System.Collections.Generic.List <PropertyViewModel> { new PropertyViewModel { Id = property.Id, PropertyType = property.PropertyType, StreetName = property.StreetName, Description = property.Description, NumberOfBedrooms = property.NumberOfBedrooms, IsListedForSale = property.IsListedForSale, SuggestedAskingPrice = property.SuggestedAskingPrice } } }; return(View("Index", m)); }
public ActionResult MakeOffer(int reference) { if (reference == 0) { return(RedirectToAction("Index", "Trades")); //Need to insert proper error message } MakeOfferViewModel makeOfferForm = tradeManager.CreateOfferList(reference); if (makeOfferForm == null) { return(RedirectToAction("Index", "Trades")); } return(View(makeOfferForm)); }
public MakeOfferViewModel CreateOfferList(int reference) { Item referenceItem = db.Item.Where(i => i.ItemId == reference).FirstOrDefault(); if (referenceItem != null) { MakeOfferViewModel offerList = new MakeOfferViewModel(); offerList.ReferenceId = referenceItem.ItemId; offerList.Name = referenceItem.Name; offerList.Caption = referenceItem.Caption; offerList.Description = referenceItem.Description; offerList.OfferOptions = GetItemList(reference); return(offerList); } return(null); }