コード例 #1
0
        public IActionResult SearchJobAdvertisement(SearchJobAdvertisementViewModel model)
        {
            var resultModel = _jobAdvertisementService.SearchJobAdvertisement(model);

            model = _jobAdvertisementService.GetSearchJobAdvertisementFormData();
            model.searchResultJobAdvertisementViewModel = resultModel;

            //var getFormModel = _jobAdvertisementService.GetSearchJobAdvertisementFormData();
            return(View(model));
        }
コード例 #2
0
        public SearchJobAdvertisementViewModel GetSearchJobAdvertisementFormData()
        {
            var model = new SearchJobAdvertisementViewModel();

            model.CityId = new List <int?>()
            {
                0
            };
            model.CityList         = _cityService.GetCityListToForm();
            model.EducationLevelId = new List <int?>()
            {
                0
            };
            model.EducationLevelList = _educationLevelService.GetEducationLevelList();
            model.DepartmantId       = new List <int?>()
            {
                0
            };
            model.DepartmantList = _departmantService.GetDepartmantList();
            model.WorkTypeId     = new List <int?>()
            {
                0
            };
            model.WorkTypeList = _workTypeService.GetWorkTypeList();
            model.PositionId   = new List <int?>()
            {
                0
            };
            model.PositionList = _positionService.GetPositionList();
            model.SectorId     = new List <int?>()
            {
                0
            };
            model.SectorList = _sectorService.GetSectorList();

            return(model);
        }
コード例 #3
0
        public List <SearchResultJobAdvertisementViewModel> SearchJobAdvertisement(SearchJobAdvertisementViewModel model)
        {
            var query = _jobAdvertisementRepository.GetAll().Where(x => true);

            if (model.WhereToSearch == 1 && model.Text != null)
            {
                query = query.Where(x => x.JobTitle.Contains(model.Text) || x.JobDefinition.Contains(model.Text));
            }
            else if (model.WhereToSearch == 2 && model.Text != null)
            {
                query = query.Where(x => x.JobTitle.Contains(model.Text));
            }
            else if (model.WhereToSearch == 3 && model.Text != null)
            {
                var companyUserIdList = _companyDetailService.GetCompanyUserIdsByCompanyName(model.Text);
                query = query.Where(x => companyUserIdList.Any(y => y == x.CompanyUserId));
            }

            /*      <option selected value="1">Bütün İlanlar</option>
             *      <option value="2">Bugünün İlanları</option>
             *      <option value="3">Son 3 saat</option>
             *      <option value="4">Son 8 saat</option>
             *      <option value="5">Son 3 gün</option>
             *      <option value="6">Son 7 gün</option>
             *      <option value="7">Son 15 gün</option>
             */
            DateTime date = DateTime.MinValue;

            if (model.DateSearch == 7)
            {
                date = DateTime.Now.Date.AddDays(-15);
            }
            else if (model.DateSearch == 6)
            {
                date = DateTime.Now.Date.AddDays(-7);
            }
            else if (model.DateSearch == 5)
            {
                date = DateTime.Now.Date.AddDays(-3);
            }
            else if (model.DateSearch == 4)
            {
                date = DateTime.Now.AddHours(-8);
            }
            else if (model.DateSearch == 3)
            {
                date = DateTime.Now.AddHours(-3);
            }
            else if (model.DateSearch == 2)
            {
                date = DateTime.Now.Date;
            }

            if (date != DateTime.MinValue)
            {
                query = query.Where(x => x.CreateDate >= date);
            }



            if (model.SectorId != null && model.SectorId.Count > 0 && !model.SectorId.Contains(0))
            {
                var companyUserIdList = _companyDetailService.GetCompanyUserIdsBySectorId(model.SectorId);
                query = query.Where(x => companyUserIdList.Any(y => y == x.CompanyUserId));
            }
            if (model.DepartmantId != null && model.DepartmantId.Count > 0 && !model.DepartmantId.Contains(0))
            {
                query = query.Where(x => model.DepartmantId.Contains(x.DepartmantId));
            }
            if (model.EducationLevelId != null && model.EducationLevelId.Count > 0 && !model.EducationLevelId.Contains(0))
            {
                query = query.Where(x => model.EducationLevelId.Contains(x.EducationLevelId));
            }

            if (model.PositionId != null && model.PositionId.Count > 0 && !model.PositionId.Contains(0))
            {
                query = query.Where(x => model.PositionId.Contains(x.PositionId));
            }

            if (model.WorkTypeId != null && model.WorkTypeId.Count > 0 && !model.WorkTypeId.Contains(0))
            {
                query = query.Where(x => model.WorkTypeId.Contains(x.WorkTypeId));
            }
            if (model.CityId != null && model.CityId.Count > 0 && !model.CityId.Contains(0))
            {
                query = query.Where(x => model.CityId.Contains(x.CityId));
            }


            if (model.RequiredExperience == 2)
            {
                query = query.Where(x => x.RequiredExperience == 0);
            }


            var foundedJobAdvertisements = new List <SearchResultJobAdvertisementViewModel>();

            foreach (var item in query.ToList())
            {
                var jobAdvertisement = new SearchResultJobAdvertisementViewModel();
                jobAdvertisement.CityName           = _cityService.GetCityNameByCityId(item.CityId);
                jobAdvertisement.EducationLevelName = _educationLevelService.GetEdcuationLevelNameByEducationLevelId(item.EducationLevelId);
                jobAdvertisement.CompanyName        = _companyDetailService.GetCompanyDetailNameByCompanyUserId(item.CompanyUserId);
                jobAdvertisement.CreateDate         = item.CreateDate;
                jobAdvertisement.AvailableJobCount  = item.AvailableJobCount;
                jobAdvertisement.DepartmantName     = _departmantService.GetDepartmantNameByDepartmantId(item.DepartmantId);
                jobAdvertisement.ExpireDate         = item.ExpireDate;
                jobAdvertisement.JobAdvertisementId = item.Id;
                jobAdvertisement.JobDefinition      = item.JobDefinition;
                jobAdvertisement.JobTitle           = item.JobTitle;
                jobAdvertisement.PositionName       = _positionService.GetPositionNameByPositionId(item.PositionId);
                jobAdvertisement.RequiredExperience = item.RequiredExperience;
                jobAdvertisement.WorkTypeName       = _workTypeService.GetWorkTypeNameByWorkTypeId(item.WorkTypeId);
                foundedJobAdvertisements.Add(jobAdvertisement);
            }
            return(foundedJobAdvertisements);
        }