public IActionResult SearchJobAdvertisement(SearchJobAdvertisementViewModel model) { var resultModel = _jobAdvertisementService.SearchJobAdvertisement(model); model = _jobAdvertisementService.GetSearchJobAdvertisementFormData(); model.searchResultJobAdvertisementViewModel = resultModel; //var getFormModel = _jobAdvertisementService.GetSearchJobAdvertisementFormData(); return(View(model)); }
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); }
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); }