diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/domain/ESJobDocument.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/domain/ESJobDocument.java index 8500007..b4bab02 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/domain/ESJobDocument.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/domain/ESJobDocument.java @@ -161,6 +161,10 @@ public class ESJobDocument @IndexField(fieldType = FieldType.TEXT) private String companyVoJson; + @ApiModelProperty("岗位联系人信息") + @IndexField(fieldType = FieldType.TEXT) + private String jobContactVoJson; + @ApiModelProperty("是否发布 0未发布 1发布") private Integer isPublish; } diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/ESJobSearchImpl.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/ESJobSearchImpl.java index b6cf01c..aa95ef8 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/ESJobSearchImpl.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/ESJobSearchImpl.java @@ -188,8 +188,11 @@ public class ESJobSearchImpl implements IESJobSearchService esJobDocument.setJobCategory(resolveJobCategoryLabel(job.getJobCategory())); //类型转换导致赋值问题,重新赋值 esJobDocument.setScale(org.apache.commons.lang3.StringUtils.isNotEmpty(job.getScale()) ? Integer.parseInt(job.getScale()) : 0); + //企业信息 CompanyVo vo=job.getCompanyVo(); esJobDocument.setCompanyVoJson(JSON.toJSONString(vo)); + //岗位联系人 + esJobDocument.setJobContactVoJson(JSON.toJSONString(job.getJobContactList())); esJobDocument.setAppJobUrl("https://www.xjksly.cn/app#/packageA/pages/post/post?jobId="+ job.getJobId()); if(!StringUtil.isEmptyOrNull(job.getScale())){ esJobDocument.setScale(Integer.valueOf(job.getScale())); @@ -690,6 +693,9 @@ public class ESJobSearchImpl implements IESJobSearchService if(hasText(jobQuery.getScaleDictCode())){ wrapper.and(a->a.eq(ESJobDocument::getScaleDictCode,jobQuery.getScaleDictCode().trim())); } + if(hasText(jobQuery.getJobCategory())){ + wrapper.and(a->a.eq(ESJobDocument::getJobCategory,jobQuery.getJobCategory().trim())); + } if(hasText(jobQuery.getIndustry())){ wrapper.and(a->a.eq(ESJobDocument::getIndustry,jobQuery.getIndustry().trim())); } @@ -711,7 +717,14 @@ public class ESJobSearchImpl implements IESJobSearchService if(hasText(jobQuery.getType())){ wrapper.and(a->a.eq(ESJobDocument::getType,jobQuery.getType().trim())); } - + //开始时间 + if(Objects.nonNull(jobQuery.getEndDate())){ + wrapper.and(x->x.le(ESJobDocument::getPostingDate,jobQuery.getEndDate())); + } + //截至时间 + if(Objects.nonNull(jobQuery.getStartDate())){ + wrapper.and(x->x.ge(ESJobDocument::getPostingDate,jobQuery.getStartDate())); + } // 先开启打分、优先按匹配分数排序(关键词前台命中越高越靠前) wrapper.trackScores(); wrapper.sortByScore(SortOrder.DESC); diff --git a/ruoyi-bussiness/src/main/resources/mapper/app/JobMapper.xml b/ruoyi-bussiness/src/main/resources/mapper/app/JobMapper.xml index f80131a..f921f1c 100644 --- a/ruoyi-bussiness/src/main/resources/mapper/app/JobMapper.xml +++ b/ruoyi-bussiness/src/main/resources/mapper/app/JobMapper.xml @@ -85,6 +85,7 @@ + @@ -100,6 +101,11 @@ + + + + + select job_id, job_title, min_salary, max_salary, education, experience, company_name, job_location, posting_date, vacancies, del_flag, create_by, create_time, update_by, update_time, remark, latitude, longitude, "view", company_id , is_hot ,is_urgent,apply_num,is_publish, description,job_location_area_code,data_source,job_url,job_category,is_explain,explain_url,cover,job_type,job_address, review_status from job @@ -285,10 +291,11 @@ )