예제 #1
0
        public JsonResult ResultSearchJson(SeachJobViewModel modelresult, AskJobViewModel model)
        {
            List <JobModel>                 result           = TempData["listeJobJson"] as List <JobModel>;
            List <MultimediaModel>          resultMultimedia = TempData["listeMulti_Json"] as List <MultimediaModel>;
            List <VehiculeModel>            resultVehicule   = TempData["listeVehicule_Json"] as List <VehiculeModel>;
            List <ModeModel>                resultMode       = TempData["listeMode_json"] as List <ModeModel>;
            List <HouseModel>               resultHouse      = TempData["listeHouse_json"] as List <HouseModel>;
            List <ProductModel>             resultSearchAsk  = TempData["listeSearchAsk_json"] as List <ProductModel>;
            List <ApartmentRentalModel>     resultImmobilier = TempData["listeApartJson"] as List <ApartmentRentalModel>;
            List <DataJsonProductViewModel> data             = new List <DataJsonProductViewModel>();

            if (modelresult.CagtegorieSearch != null)
            {
                switch (modelresult.CagtegorieSearch)
                {
                case "Emploi":
                    if (result != null)
                    {
                        foreach (var element in result)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(o => o.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                    break;

                case "Immobilier":
                    if (resultImmobilier != null)
                    {
                        foreach (var element in resultImmobilier)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(m => m.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                    break;

                case "Multimedia":
                    if (resultMultimedia != null)
                    {
                        foreach (var element in resultMultimedia)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(o => o.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                    break;

                case "Vehicule":
                    if (resultVehicule != null)
                    {
                        foreach (var element in resultVehicule)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(o => o.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                    break;

                case "Mode":
                    if (resultMode != null)
                    {
                        foreach (var element in resultMode)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(o => o.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                    break;

                case "Maison":
                    if (resultHouse != null)
                    {
                        foreach (var element in resultHouse)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(o => o.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                    break;
                }
            }
            else
            {
                modelresult          = new SeachJobViewModel();
                modelresult.ListePro = new List <ProductModel>();
                try
                {
                    foreach (var element in resultSearchAsk)
                    {
                        modelresult.ListePro.Add(element);
                    }
                    data = modelresult.ListePro.Select(s => new DataJsonProductViewModel
                    {
                        Title    = s.Title,
                        Lat      = s.Coordinate.Lat,
                        Lon      = s.Coordinate.Lon,
                        id       = s.id,
                        Images   = s.Images.Select(o => o.Image).FirstOrDefault(),
                        Town     = s.Town,
                        Category = s.Category.CategoryName
                    }).ToList();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.ToString());
                }
            }

            if (modelresult.ListePro == null)
            {
                modelresult.ListePro = new List <ProductModel>();
            }

            return(Json(data, JsonRequestBehavior.AllowGet));
        }
예제 #2
0
        //result of every search product
        public ActionResult ResultSearch_PartialView(SeachJobViewModel modelresult, int?pageNumber, string sortBy, AskJobViewModel model)
        {
            if (modelresult.CagtegorieSearch != null)
            {
                switch (modelresult.CagtegorieSearch)
                {
                case "Emploi":
                    try
                    {
                        var result = TempData["listeJob"] as List <JobModel>;
                        if (result != null)
                        {
                            foreach (var element in result)
                            {
                                modelresult.ListePro.Add(element);
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e.ToString());
                    }
                    break;

                case "Immobilier":
                    try
                    {
                        var resultImmobilier = TempData["listeApart"] as List <ApartmentRentalModel>;
                        if (resultImmobilier != null)
                        {
                            foreach (var element in resultImmobilier)
                            {
                                modelresult.ListePro.Add(element);
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e.ToString());
                    }
                    break;

                case "Multimedia":
                    try
                    {
                        var resultMultimedia = TempData["listeMulti"] as List <MultimediaModel>;
                        if (resultMultimedia != null)
                        {
                            foreach (var element in resultMultimedia)
                            {
                                modelresult.ListePro.Add(element);
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e.ToString());
                    }
                    break;

                case "Vehicule":
                    try
                    {
                        var resultVehicule = TempData["listeVehicule"] as List <VehiculeModel>;
                        if (resultVehicule != null)
                        {
                            foreach (var element in resultVehicule)
                            {
                                modelresult.ListePro.Add(element);
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e.ToString());
                    }
                    break;

                case "Mode":
                    try
                    {
                        var resultMode = TempData["listeMode"] as List <ModeModel>;
                        if (resultMode != null)
                        {
                            foreach (var element in resultMode)
                            {
                                modelresult.ListePro.Add(element);
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e.ToString());
                    }
                    break;
                }


                if (modelresult.ListePro == null)
                {
                    modelresult.ListePro = new List <ProductModel>();
                }

                switch (sortBy)
                {
                case "Price desc":
                    modelresult.ListePro          = modelresult.ListePro.OrderByDescending(m => m.Price).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                case "Price asc":
                    modelresult.ListePro          = modelresult.ListePro.OrderBy(m => m.Price).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                case "date desc":
                    modelresult.ListePro          = modelresult.ListePro.OrderByDescending(m => m.DateAdd).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                case "date asc":
                    modelresult.ListePro          = modelresult.ListePro.OrderBy(m => m.DateAdd).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                default:
                    modelresult.ListePro          = modelresult.ListePro.OrderByDescending(x => x.DateAdd).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;
                }
                return(PartialView(modelresult));
            }
            else
            {
                modelresult                  = new SeachJobViewModel();
                modelresult.ListePro         = new List <ProductModel>();
                modelresult.CagtegorieSearch = "AskSearch";
                try
                {
                    var result = TempData["listeSearchAsk"] as List <ProductModel>;
                    if (result != null)
                    {
                        foreach (var element in result)
                        {
                            modelresult.ListePro.Add(element);
                        }
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.ToString());
                }

                switch (sortBy)
                {
                case "Price desc":
                    modelresult.ListePro          = modelresult.ListePro.OrderByDescending(m => m.Price).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                case "Price asc":
                    modelresult.ListePro          = modelresult.ListePro.OrderBy(m => m.Price).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                case "date desc":
                    modelresult.ListePro          = modelresult.ListePro.OrderByDescending(m => m.id).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                case "date asc":
                    modelresult.ListePro          = modelresult.ListePro.OrderBy(m => m.id).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;

                default:
                    modelresult.ListePro          = modelresult.ListePro.OrderByDescending(x => x.id).ToList();
                    modelresult.ListeProPagedList = modelresult.ListePro.ToPagedList(pageNumber ?? 1, 10);
                    break;
                }

                return(PartialView(modelresult));
            }

            // modelresult.ListePro = TempData["listeJob"] as List<ProductModel>;
            // modelresult.ListePro = dal.GetListProduct().Where(r => r.Title.IndexOf(modelresult.TitleJobSearch, StringComparison.CurrentCultureIgnoreCase) >= 0).ToList();
        }
예제 #3
0
        public ActionResult ResultSearchAsk_Jason(string category, string town, string title)
        {
            string          searchOrAsk = "Je recherche";
            AskJobViewModel model       = new AskJobViewModel();

            model.CagtegorieSearchAsk = category;
            model.TownSearchAsk       = town;
            model.TitleSearchAsk      = title;

            List <ProductModel> liste = dal.GetListProduct().ToList();

            if (string.IsNullOrWhiteSpace(model.TitleSearchAsk) && string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (!string.IsNullOrWhiteSpace(model.TitleSearchAsk) && !string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     !string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk &&
                                    m.Category.CategoryName == model.CagtegorieSearchAsk && m.Town == model.TownSearchAsk && (m.Title.ToLower().Contains(model.TitleSearchAsk.ToLower()) ||
                                                                                                                              m.Description.ToLower().Contains(model.TitleSearchAsk.ToLower()))).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (string.IsNullOrWhiteSpace(model.TitleSearchAsk) && !string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     !string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk &&
                                    m.Category.CategoryName == model.CagtegorieSearchAsk && m.Town == model.TownSearchAsk).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (string.IsNullOrWhiteSpace(model.TitleSearchAsk) && string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     !string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk && m.Town == model.TownSearchAsk).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (string.IsNullOrWhiteSpace(model.TitleSearchAsk) && !string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk && m.Category.CategoryName == model.CagtegorieSearchAsk).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (!string.IsNullOrWhiteSpace(model.TitleSearchAsk) && string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     !string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk && m.Town == model.TownSearchAsk && (m.Title.ToLower().Contains(model.TitleSearchAsk.ToLower()) ||
                                                                                                              m.Description.ToLower().Contains(model.TitleSearchAsk.ToLower()))).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (!string.IsNullOrWhiteSpace(model.TitleSearchAsk) && !string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk && m.Category.CategoryName == model.CagtegorieSearchAsk && (m.Title.ToLower().Contains(model.TitleSearchAsk.ToLower()) ||
                                                                                                                                     m.Description.ToLower().Contains(model.TitleSearchAsk.ToLower()))).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            else if (!string.IsNullOrWhiteSpace(model.TitleSearchAsk) && string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk) &&
                     string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.SearchOrAskJob == searchOrAsk && (m.Title.ToLower().Contains(model.TitleSearchAsk.ToLower()) ||
                                                                             m.Description.ToLower().Contains(model.TitleSearchAsk.ToLower()))).ToList();
                TempData["listeSearchAsk_json"] = liste;
            }
            return(RedirectToAction("ResultSearchJson", model));
        }
예제 #4
0
        public ActionResult ResultSearchAskProduct_PartialView(AskJobViewModel model, int?pageNumber, string sortBy)
        {
            string searchOrAsk = "Je recherche";

            ViewBag.PriceAscSort  = String.IsNullOrEmpty(sortBy) ? "Price desc" : "";
            ViewBag.PriceDescSort = sortBy == "Prix croissant" ? "Price asc" : "";
            ViewBag.DateAscSort   = sortBy == "Plus anciennes" ? "date asc" : "";
            ViewBag.DateDescSort  = sortBy == "Plus recentes" ? "date desc" : "";
            model.sortBy          = sortBy;
            model.PageNumber      = pageNumber;
            List <ProductModel> liste = dal.GetListProduct().Where(m => m.SearchOrAskJob == searchOrAsk).ToList();

            if (!string.IsNullOrWhiteSpace(model.TownSearchAsk))
            {
                liste = liste.Where(m => m.Town != null && m.Town == model.TownSearchAsk).ToList();
            }

            if (!string.IsNullOrWhiteSpace(model.CagtegorieSearchAsk))
            {
                liste = liste.Where(m => m.Category != null && m.Category.CategoryName == model.CagtegorieSearchAsk).ToList();
            }

            if (!string.IsNullOrWhiteSpace(model.TitleSearchAsk))
            {
                liste = liste.Where(m => m.Title != null && m.Title.ToLower().Contains(model.TitleSearchAsk.ToLower()) ||
                                    m.Description != null && m.Description.ToLower().Contains(model.TitleSearchAsk.ToLower())).ToList();
            }

            model.ListePro = liste;

            switch (sortBy)
            {
            case "Price desc":
                liste = liste.OrderByDescending(m => m.Price).ToList();
                model.ListeProPagedList = liste.ToPagedList(pageNumber ?? 1, 10);
                break;

            case "Price asc":
                liste = liste.OrderBy(m => m.Price).ToList();
                model.ListeProPagedList = liste.ToPagedList(pageNumber ?? 1, 10);
                break;

            case "date desc":
                liste = liste.OrderByDescending(m => m.DateAdd).ToList();
                model.ListeProPagedList = liste.ToPagedList(pageNumber ?? 1, 10);
                break;

            case "date asc":
                liste = liste.OrderBy(m => m.DateAdd).ToList();
                model.ListeProPagedList = liste.ToPagedList(pageNumber ?? 1, 10);
                break;

            default:
                liste = liste.OrderByDescending(x => x.DateAdd).ToList();
                model.ListeProPagedList = liste.ToPagedList(pageNumber ?? 1, 10);
                break;
            }



            return(View("FilterSearchAskProduct", model));
        }
예제 #5
0
 public ActionResult FilterSearchAskProduct(AskJobViewModel model)
 {
     return(View(model));
 }
예제 #6
0
 //for ask only ask
 public ActionResult SearchAskProduct_PartialView(AskJobViewModel model)
 {
     return(PartialView(model));
 }