public JsonResult GetJobList(JobFilterArgument filterArgs) { try { var userId = (int)Security.Helpers.SessionHelpers.LOGGED_IN_USER.Value; var employee = _repo.GetEmployeeByUserID(userId); var employeeID = employee != null ? employee.ID : 0; var company = _repo.GetCompanyByUserID(userId); var companyID = company != null ? company.ID : 0; filterArgs.EmployeeID = employeeID; filterArgs.CompanyID = companyID; var data = _repo.GetJobList(filterArgs); var Result = new { Data = data }; var jsonResult = Json(Result, JsonRequestBehavior.AllowGet); jsonResult.MaxJsonLength = int.MaxValue; return(jsonResult); } catch (Exception ex) { return(Json(string.Format("There was an error when fetching data: {0}", ex.Message), JsonRequestBehavior.AllowGet)); } }
/// <summary> /// Gets list of jobs using filters supplied. A list view by a job seeker/ employee /// </summary> /// <param name="filterArgs"></param> /// <returns></returns> public List <JobModel> GetJobs(JobFilterArgument filterArgs) { using (var context = new FleetConnectAssessmentEntities()) { var employeeID = filterArgs.EmployeeID; var mappedJobs = (from job in context.Jobs join empJob in context.EmployeeJobs on job.ID equals empJob.JobID into queryResult where (job.CompanyID == filterArgs.CompanyID || (filterArgs.CompanyID <= 0 || filterArgs.CompanyID == null || filterArgs.CompanyID == 0)) where (job.YearsOfExperience <= filterArgs.NoOfYersOfExperience || filterArgs.NoOfYersOfExperience == null) from item in queryResult.DefaultIfEmpty() select new JobModel() { AlreadyApplied = (item != null && item.EmployeeID == employeeID ? true : false), ID = job.ID, Category = job.Category, CompanyID = job.CompanyID, JobDescription = job.JobDescription, Keywords = job.Keywords, Title = job.Title, YearsOfExperience = job.YearsOfExperience, CompanyName = job.Company.Name }).ToList(); if (!string.IsNullOrEmpty(filterArgs.Keyword)) { mappedJobs = filterJobsByKeywords(mappedJobs, filterArgs.Keyword); } return(mappedJobs); } }
/// <summary> /// Gets list of jobs using filters supplied. This is for the job list viewd by an employer /// </summary> /// <param name="filterArgs"></param> /// <returns></returns> public List <JobListModel> GetJobList(JobFilterArgument filterArgs) { using (var context = new FleetConnectAssessmentEntities()) { var employeeID = filterArgs.EmployeeID; var jobs = (from job in context.vw_Jobs where (job.CompanyID == filterArgs.CompanyID || (filterArgs.CompanyID <= 0 || filterArgs.CompanyID == null || filterArgs.CompanyID == 0)) where (job.YearsOfExperience <= filterArgs.NoOfYersOfExperience || filterArgs.NoOfYersOfExperience == null) orderby job.Title select job).ToList(); var mappedJobs = jobs.Map(); return(mappedJobs); } }
public JsonResult GetJobs(JobFilterArgument filterArgs) { var result = _repo.GetJobs(filterArgs); return(Json(result, JsonRequestBehavior.AllowGet)); }