// GET: Items/Edit/5 public IActionResult Edit(int id) { // we pass the current values into the Edit view // so that the input fields can be pre-populated instead of blank // (important for good UX) Domain.Model.Review review = RepoRev.GetReviewById(id); var viewModel = new ReviewViewModel { ReviewId = review.Id, UserName = RepoPers.GetPersonById(review.PersonId).Username, Password = RepoPers.GetPersonById(review.PersonId).Password, SellerName = RepoSell.GetSellerById(review.SellerId).Name, Score = review.Score, Comment = review.Comment }; List <string> mySellers = new List <string> (); foreach (var val in RepoSell.GetSellersByName().ToList()) { mySellers.Add(val.Name); } ViewData["SellerName"] = new SelectList(mySellers); List <string> myPeople = new List <string> (); foreach (var val in RepoPers.GetPeopleByName().ToList()) { myPeople.Add(val.Username); } ViewData["UserName"] = new SelectList(myPeople); return(View(viewModel)); }
public ActionResult Details(int id) { Domain.Model.Order order = RepoOrd.GetOrderById(id); var viewModel = new OrderViewModel { OrderId = order.Id, SortMethod = "Default", PersonName = order.Username, StoreName = RepoStore.GetStoreById(RepoPers.GetPersonById(order.UserId).StoreId).Name, OrderDate = order.Date, TotalOrderPrice = order.Price, Items = order.Items.Select(y => new ItemViewModel { ItemId = y.Id, ItemName = y.Name, ItemDescription = y.Description, ItemPrice = y.Price, StoreName = RepoStore.GetStoreById(y.StoreId).Name, OrderId = y.OrderId, SellerName = RepoSell.GetSellerById(y.SellerId).Name, TopicName = RepoTopi.GetTopicById(y.TopicId).Topic }).ToList() }; List <string> mySorters = new List <string> { "Default", "Old to New", "New to Old", "Low Price to High Price", "High Price to Low Price" }; ViewData["Sorter"] = new SelectList(mySorters); return(View(viewModel)); }
public IActionResult Create([Bind("SellerName,Items,AverageReview")] SellerViewModel viewModel) { try { if (ModelState.IsValid) { var seller = new Domain.Model.Seller { Id = viewModel.SellerId, Name = viewModel.SellerName, Items = RepoItem.GetItemsBySellerName(viewModel.SellerName) .FindAll(p => p.SellerId == (RepoSell.GetSellersByName(viewModel.SellerName) .First(p => p.Name == viewModel.SellerName).Id)), Reviews = RepoRev.GetReviewBySellerName(viewModel.SellerName) .FindAll(p => p.SellerId == (RepoSell.GetSellersByName(viewModel.SellerName) .First(p => p.Name == viewModel.SellerName).Id)) }; RepoSell.AddSeller(seller); RepoSell.Save(); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); } catch { return(View(viewModel)); } }
public ActionResult Order([FromRoute] int id, [Bind("LogInViewModel,Items,selectedItems")] ItemAnLogInViewModel viewModel) { try { if (ModelState.IsValid) { viewModel = (ItemAnLogInViewModel )TempData["Login"]; var myOldItem = RepoItem.GetItemById(id); var myNewItem = new ItemViewModel { ItemId = myOldItem.Id, ItemName = myOldItem.Name, ItemDescription = myOldItem.Description, ItemPrice = myOldItem.Price, StoreName = RepoStore.GetStoreById(myOldItem.StoreId).Name, OrderId = myOldItem.OrderId, SellerName = RepoSell.GetSellerById(myOldItem.SellerId).Name, TopicName = RepoTopi.GetTopicById(myOldItem.TopicId).Topic }; viewModel.selectedItems.Add(myNewItem); viewModel.Items.Remove(viewModel.Items.Find(p => p.ItemId == myNewItem.ItemId)); } return(View(viewModel)); } catch { return(View(viewModel)); } }
public IActionResult Edit([FromRoute] int id, [Bind("SellerName,Items,AverageReview")] SellerViewModel viewModel) { try { if (ModelState.IsValid) { Domain.Model.Seller seller = RepoSell.GetSellerById(id); seller.Name = viewModel.SellerName; seller.Items = RepoItem.GetItemsBySellerName(viewModel.SellerName) .FindAll(p => p.SellerId == (RepoSell.GetSellersByName(viewModel.SellerName) .First(p => p.Name == viewModel.SellerName).Id)); seller.Reviews = RepoRev.GetReviewBySellerName(viewModel.SellerName) .FindAll(p => p.SellerId == (RepoSell.GetSellersByName(viewModel.SellerName) .First(p => p.Name == viewModel.SellerName).Id)); RepoSell.UpdateSeller(seller); RepoSell.Save(); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); } catch (Exception) { return(View(viewModel)); } }
// GET: Items/Delete/5 public IActionResult Delete(int id) { Domain.Model.Seller seller = RepoSell.GetSellerById(id); var viewModel = new SellerViewModel { SellerId = seller.Id, SellerName = seller.Name, Items = seller.Items.Count, AverageReview = seller.Rating }; return(View(viewModel)); }
// GET: Items/Delete/5 public IActionResult Delete(int id) { Domain.Model.Review review = RepoRev.GetReviewById(id); var viewModel = new ReviewViewModel { ReviewId = review.Id, UserName = RepoPers.GetPersonById(review.PersonId).Username, Password = RepoPers.GetPersonById(review.PersonId).Password, SellerName = RepoSell.GetSellerById(review.SellerId).Name, Score = review.Score, Comment = review.Comment }; return(View(viewModel)); }
public ActionResult Delete(int id, [BindNever] IFormCollection collection) { try { RepoRev.DeleteReviewBySellerId(id); RepoItem.DeleteItemBySellerId(id); RepoSell.DeleteSellerById(id); RepoSell.Save(); return(RedirectToAction(nameof(Index))); } catch { return(View()); } }
// GET: Items/Edit/5 public IActionResult Edit(int id) { // we pass the current values into the Edit view // so that the input fields can be pre-populated instead of blank // (important for good UX) Domain.Model.Seller seller = RepoSell.GetSellerById(id); var viewModel = new SellerViewModel { SellerId = seller.Id, SellerName = seller.Name, Items = seller.Items.Count, AverageReview = seller.Rating }; return(View(viewModel)); }
// GET: Items/Create public IActionResult Create() { List <string> myPeople = new List <string> (); foreach (var val in RepoPers.GetPeopleByName().ToList()) { myPeople.Add(val.Username); } ViewData["UserName"] = new SelectList(myPeople); List <string> mySellers = new List <string> (); foreach (var val in RepoSell.GetSellersByName().ToList()) { mySellers.Add(val.Name); } ViewData["SellerName"] = new SelectList(mySellers); return(View()); }
public IActionResult Create([Bind("UserName,Password,SellerName,Score,Comment")] ReviewViewModel viewModel) { try { if (ModelState.IsValid) { if (viewModel.Password != RepoPers.GetPeopleByName(viewModel.UserName).First(p => p.Username.ToLower() == viewModel.UserName.ToLower()).Password) { return(View(viewModel)); } var review = new Domain.Model.Review { Id = viewModel.ReviewId, Comment = viewModel.Comment, Score = viewModel.Score, PersonId = RepoPers.GetPeopleByName(viewModel.UserName).First(p => p.Username.ToLower() == viewModel.UserName.ToLower()).Id, SellerId = RepoSell.GetSellersByName(viewModel.SellerName).First(p => p.Name.ToLower() == viewModel.SellerName.ToLower()).Id }; List <string> mySellers = new List <string> (); foreach (var val in RepoSell.GetSellersByName().ToList()) { mySellers.Add(val.Name); } ViewData["SellerName"] = new SelectList(mySellers); List <string> myPeople = new List <string> (); foreach (var val in RepoPers.GetPeopleByName().ToList()) { myPeople.Add(val.Username); } ViewData["UserName"] = new SelectList(myPeople); RepoRev.AddReview(review); RepoRev.Save(); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); } catch { return(View(viewModel)); } }
// GET: Items public ActionResult Index([FromQuery] string search = "") { List <Domain.Model.Seller> sellers = RepoSell.GetSellersByName(); List <SellerViewModel> realSellers = new List <SellerViewModel>(); foreach (var val in sellers) { realSellers.Add(new SellerViewModel { SellerId = val.Id, SellerName = val.Name, Items = val.Items.Count, AverageReview = val.Rating }); } if (search != null) { return(View(realSellers.FindAll(p => p.SellerName.ToLower().Contains(search.ToLower())))); } return(View(realSellers)); }
// GET: Items public ActionResult Index([FromQuery] string search = "") { List <Domain.Model.Review> reviews = RepoRev.GetReviewByUserName(); List <ReviewViewModel> realReviews = new List <ReviewViewModel>(); foreach (var val in reviews) { realReviews.Add(new ReviewViewModel { ReviewId = val.Id, UserName = RepoPers.GetPersonById(val.PersonId).Username, Password = RepoPers.GetPersonById(val.PersonId).Password, SellerName = RepoSell.GetSellerById(val.SellerId).Name, Score = val.Score, Comment = val.Comment }); } if (search != null) { return(View(realReviews.FindAll(p => p.UserName.ToLower().Contains(search.ToLower()) || p.SellerName.ToLower().Contains(search.ToLower()) || RepoRev.GetReviewById(p.ReviewId).Comment.ToLower().Contains(search.ToLower())))); } return(View(realReviews)); }
public IActionResult Edit([FromRoute] int id, [Bind("UserName,SellerName,Score,Comment,Password")] ReviewViewModel viewModel) { try { if (ModelState.IsValid) { Domain.Model.Review review = RepoRev.GetReviewById(id); review.Comment = viewModel.Comment; review.Score = viewModel.Score; review.PersonId = RepoPers.GetPeopleByName(viewModel.UserName).First(p => p.Username.ToLower() == viewModel.UserName.ToLower()).Id; review.SellerId = RepoSell.GetSellersByName(viewModel.SellerName).First(p => p.Name.ToLower() == viewModel.SellerName.ToLower()).Id; RepoRev.UpdateReview(review); RepoRev.Save(); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); } catch (Exception) { return(View(viewModel)); } }