public ActionResult Filter(OrderFilterViewModel orderFilterViewModel) { TempData["productTypeId"] = orderFilterViewModel.ProductTypeId; TempData["restaurantId"] = orderFilterViewModel.RestaurantId; return RedirectToAction("Filter"); }
// // GET: /OrderPaids/ public ViewResult Filter() { Guid? productTypeId = null; Guid? restaurantId = null; if (TempData["productTypeId"] != null) { productTypeId = TempData["productTypeId"] as Guid?; } if (TempData["restaurantId"] != null) { restaurantId = TempData["restaurantId"] as Guid?; } var query = orderpaidRepository.AllIncluding(orderpaid => orderpaid.Waiter, orderpaid => orderpaid.Restaurant, orderpaid => orderpaid.Menus); var vm = new OrderFilterViewModel(); if (restaurantId.HasValue) { vm.RestaurantId = restaurantId.Value; query = query.Where(p => p.RestaurantId == restaurantId.Value); } if (productTypeId.HasValue) { vm.ProductTypeId = productTypeId.Value; query = query.Where(p => p.Menus.Count(m => m.ProductTypeId == productTypeId.Value) > 0); } vm.Orders = query; ViewBag.PossibleRestaurants = restaurantRepository.All; ViewBag.PossibleProductTypes = producttypeRepository.All; return View(vm); }