From e9a9509f7c54ed1db6499c40ac44380ef7eddc23 Mon Sep 17 00:00:00 2001 From: chenshaohua <635616957@qq.com> Date: Tue, 21 Jul 2026 12:42:41 +0800 Subject: [PATCH 1/2] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E4=BC=81=E4=B8=9A?= =?UTF-8?q?=E8=81=94=E7=B3=BB=E4=BA=BA=E4=BF=9D=E5=AD=98=202.=E4=BF=AE?= =?UTF-8?q?=E6=94=B9es=E6=90=9C=E7=B4=A2=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cms/service/impl/CompanyServiceImpl.java | 19 ++++++++----- .../cms/service/impl/ESJobSearchImpl.java | 28 +++++++++++-------- 2 files changed, 29 insertions(+), 18 deletions(-) diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/CompanyServiceImpl.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/CompanyServiceImpl.java index 5cc9f19..ef5dec1 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/CompanyServiceImpl.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/CompanyServiceImpl.java @@ -169,13 +169,18 @@ public class CompanyServiceImpl extends ServiceImpl impl companyContactMapper.update(null,Wrappers.lambdaUpdate() .eq(CompanyContact::getCompanyId, company.getCompanyId()) .set(CompanyContact::getDelFlag, Constants.Del_FLAG_DELETE)); - if(!Objects.isNull(company.getCompanyContactList())){ - company.getCompanyContactList().forEach(x -> { - CompanyContact companyContact = new CompanyContact(); - companyContact.setCompanyId(company.getCompanyId()); - BeanUtils.copyProperties(x, companyContact); - companyContactMapper.insert(companyContact); - }); + List contactList = company.getCompanyContactList(); + if (!Objects.isNull(contactList)) { + for (CompanyContact x : contactList) { + CompanyContact entity = new CompanyContact(); + entity.setCompanyId(company.getCompanyId()); + BeanUtils.copyProperties(x, entity); + if (entity.getId() != null) { + companyContactMapper.updateById(entity); + } else { + companyContactMapper.insert(entity); + } + } } if (companyNatureChanged) { List jobIds = jobMapper.selectList(Wrappers.lambdaQuery() 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 8a159f5..863f7c9 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 @@ -778,18 +778,24 @@ public class ESJobSearchImpl implements IESJobSearchService wrapper.trackScores(); wrapper.sortByScore(SortOrder.DESC); if(Objects.nonNull(jobQuery.getOrder())){ - wrapper.sort(SortBuilders.fieldSort("postingDate").order(SortOrder.DESC).missing("_last")); - if(jobQuery.getOrder()==1){ - wrapper.orderByDesc(ESJobDocument::getIsHot); - wrapper.orderByDesc(ESJobDocument::getApplyNum); - wrapper.orderByDesc(ESJobDocument::getView); + switch (jobQuery.getOrder()) { + case 0: // 推荐:权重 → 最新发布 + wrapper.sort(SortBuilders.fieldSort("postingDate").order(SortOrder.DESC).missing("_last")); + break; + case 1: // 最热:权重 → 热度 + wrapper.orderByDesc(ESJobDocument::getIsHot); + wrapper.orderByDesc(ESJobDocument::getApplyNum); + wrapper.orderByDesc(ESJobDocument::getView); + break; + case 2: // 最新发布:权重 → 最新发布 + wrapper.sort(SortBuilders.fieldSort("postingDate").order(SortOrder.DESC).missing("_last")); + break; + case 3: // 最大薪资:权重 → 最高薪资 + wrapper.orderByDesc(ESJobDocument::getMaxSalary); + break; + default: // 默认:权重 → 最新发布 + wrapper.sort(SortBuilders.fieldSort("postingDate").order(SortOrder.DESC).missing("_last")); } - if(jobQuery.getOrder()==3){ - wrapper.orderByDesc(ESJobDocument::getMaxSalary); - } - }else{ - //默认按照发布时间倒叙 - wrapper.sort(SortBuilders.fieldSort("postingDate").order(SortOrder.DESC).missing("_last")); } EsPageInfo esJobDocumentEsPageInfo = esJobDocumentMapper.pageQuery(wrapper, pageNum, pageSize); return esJobDocumentEsPageInfo; From 52189b238f12d826d864d707790effd0a346cdcc Mon Sep 17 00:00:00 2001 From: chenshaohua <635616957@qq.com> Date: Tue, 21 Jul 2026 13:29:28 +0800 Subject: [PATCH 2/2] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E7=A7=BB=E5=8A=A8?= =?UTF-8?q?=E7=AB=AF=E5=B2=97=E4=BD=8D=E5=90=8D=E7=A7=B0=E7=B2=BE=E5=87=86?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E5=92=8C=E5=8E=BB=E6=8E=89=E6=89=93=E5=88=86?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=202.=E9=9D=A2=E8=AF=95=E9=82=80=E7=BA=A6?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E4=BC=9A=E8=AE=AE=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ruoyi/cms/service/impl/ESJobSearchImpl.java | 8 +++----- .../resources/mapper/app/InterviewInvitationMapper.xml | 3 ++- 2 files changed, 5 insertions(+), 6 deletions(-) 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 863f7c9..77b992b 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 @@ -705,9 +705,7 @@ public class ESJobSearchImpl implements IESJobSearchService // } } if(hasText(jobQuery.getJobTitle())){ - wrapper.and(a->a.match(ESJobDocument::getJobTitle,jobQuery.getJobTitle().trim(),5.0f) - .or() - .match(ESJobDocument::getDescription,jobQuery.getJobTitle().trim(),1.0f)); + wrapper.and(a->a.match(ESJobDocument::getJobTitle,jobQuery.getJobTitle().trim(),5.0f)); } if(hasText(jobQuery.getEducation())){ // 支持逗号分隔的多值筛选(如 "3,4") @@ -775,8 +773,8 @@ public class ESJobSearchImpl implements IESJobSearchService wrapper.le(ESJobDocument::getPostingDate, DateUtils.ES_DATE_FORMATTER.format(endDate.toInstant())); } // 先开启打分、优先按匹配分数排序(关键词前台命中越高越靠前) - wrapper.trackScores(); - wrapper.sortByScore(SortOrder.DESC); +// wrapper.trackScores(); +// wrapper.sortByScore(SortOrder.DESC); if(Objects.nonNull(jobQuery.getOrder())){ switch (jobQuery.getOrder()) { case 0: // 推荐:权重 → 最新发布 diff --git a/ruoyi-bussiness/src/main/resources/mapper/app/InterviewInvitationMapper.xml b/ruoyi-bussiness/src/main/resources/mapper/app/InterviewInvitationMapper.xml index ed06d97..0e8aa22 100644 --- a/ruoyi-bussiness/src/main/resources/mapper/app/InterviewInvitationMapper.xml +++ b/ruoyi-bussiness/src/main/resources/mapper/app/InterviewInvitationMapper.xml @@ -27,6 +27,7 @@ + @@ -65,7 +66,7 @@ t.interview_time, t.interview_method, t.meeting_link, t.meeting_password, t.interview_location, t.contact_phone, t.interviewer_name, - t.job_name, t.status, t.del_flag,t.is_read, + t.job_name, t.status, t.del_flag,t.is_read,t.meeting_type, t.create_by, t.create_time, t.update_by, t.update_time, t.remark, COALESCE(c.name, t.company_name) as company_name, COALESCE(j.job_title, t.job_name) as job_title,