public IHttpActionResult ChangeOrder(SortVM viewModel) { try { return(Ok(presidentRepository.ChangeOrder(viewModel))); } catch (Exception e) { return(Content(HttpStatusCode.InternalServerError, e)); } }
public List <President> ChangeOrder(SortVM viewModel) { try { var list = GetAll(); switch (viewModel.Name) { case ColumnName.BirthDay: if (viewModel.IsAscending) { return(list.OrderBy(x => !x.Deathday.HasValue) .ThenBy(x => x.Birthday) .ToList()); } else { return(list.OrderByDescending(x => x.Deathday.HasValue) .ThenByDescending(x => x.Birthday) .ToList()); } case ColumnName.DeathDay: if (viewModel.IsAscending) { return(list.OrderBy(x => !x.Deathday.HasValue) .ToList()); } else { return(list.OrderByDescending(x => x.Deathday.HasValue) .ThenByDescending(x => x.Deathday) .ToList()); } default: throw new Exception("Wrong Column Name"); } } catch (Exception e) { throw e; } }
public JsonResult SortModelList(SortVM v) { if (v.Id != 0) { if (v.Data == "Name (A to Z)") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderBy(c => c.Name).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, Engine = s.Engine, FuelType = s.FuelType, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Name (Z to A)") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderByDescending(c => c.Name).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Price (Low to High)") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderBy(c => c.PriceDaily).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Price (High to Low)") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderByDescending(c => c.PriceDaily).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Year (Low to High)") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderBy(c => c.Year).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Year (High to Low)") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderByDescending(c => c.Year).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Default") { var response = db.Model.Where(c => c.isActive == true && c.BrandId == v.Id).OrderByDescending(c => c.PostDate).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else { return(Json("Error", JsonRequestBehavior.AllowGet)); } } else { if (v.Data == "Name (A to Z)") { var response = db.Model.Where(c => c.isActive == true).OrderBy(c => c.Name).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, Engine = s.Engine, FuelType = s.FuelType, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Name (Z to A)") { var response = db.Model.Where(c => c.isActive == true).OrderByDescending(c => c.Name).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, Engine = s.Engine, FuelType = s.FuelType, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Price (Low to High)") { var response = db.Model.Where(c => c.isActive == true).OrderBy(c => c.PriceDaily).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, FuelType = s.FuelType, Transmission = s.Transmission, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Price (High to Low)") { var response = db.Model.Where(c => c.isActive == true).OrderByDescending(c => c.PriceDaily).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Year (Low to High)") { var response = db.Model.Where(c => c.isActive == true).OrderBy(c => c.Year).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Year (High to Low)") { var response = db.Model.Where(c => c.isActive == true).OrderByDescending(c => c.Year).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, Engine = s.Engine, FuelType = s.FuelType, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else if (v.Data == "Default") { var response = db.Model.Where(c => c.isActive == true).OrderByDescending(c => c.PostDate).Select(s => new { Name = s.Name, Picture = s.ModelImages.FirstOrDefault().Name, Price = s.PriceDaily, Year = s.Year, Transmission = s.Transmission, FuelType = s.FuelType, Engine = s.Engine, Id = s.Id }).ToList(); return(Json(response, JsonRequestBehavior.AllowGet)); } else { return(Json("Error", JsonRequestBehavior.AllowGet)); } } }