添加过滤条件

This commit is contained in:
zk
2026-07-31 15:18:11 +08:00
parent ccec793079
commit 313cc3593b
3 changed files with 9 additions and 2 deletions
@@ -92,7 +92,7 @@ public class RecruitAnnouncementService {
//查询数据 //查询数据
Page<RecruitAnnouncementListItemVo> pageParam = param.toPage(); Page<RecruitAnnouncementListItemVo> pageParam = param.toPage();
pageParam.setSearchCount(false); pageParam.setSearchCount(false);
Page<RecruitAnnouncementListItemVo> page = recruitAnnouncementMapper.selectAnnouncementPage(pageParam, param.getPublishTimeStart(), param.getPublishTimeEnd(), param.getApplyEndTimeStart(), param.getApplyEndTimeEnd(), param.getCompanyTypes(), param.getEducationNames(), param.getRecruitYears(), param.getBatchNames(), param.getCategoryNames(), param.getCityNames(), param.getIndustryNames(), param.getTagNames()); Page<RecruitAnnouncementListItemVo> page = recruitAnnouncementMapper.selectAnnouncementPage(pageParam, param.getKeyword(), param.getPublishTimeStart(), param.getPublishTimeEnd(), param.getApplyEndTimeStart(), param.getApplyEndTimeEnd(), param.getCompanyTypes(), param.getEducationNames(), param.getRecruitYears(), param.getBatchNames(), param.getCategoryNames(), param.getCityNames(), param.getIndustryNames(), param.getTagNames());
List<Long> announcementIds = page.getRecords().stream().map(RecruitAnnouncementListItemVo::getId).collect(Collectors.toList()); List<Long> announcementIds = page.getRecords().stream().map(RecruitAnnouncementListItemVo::getId).collect(Collectors.toList());
if (announcementIds.isEmpty()) { if (announcementIds.isEmpty()) {
@@ -37,5 +37,5 @@ public interface RecruitAnnouncementMapper extends CommonMapper<RecruitAnnouncem
* 分页查询招聘公告列表 * 分页查询招聘公告列表
* <p>各筛选条件为“且”关系,为空则不参与筛选;多值维度不在此查询,由Java侧按id批量组装</p> * <p>各筛选条件为“且”关系,为空则不参与筛选;多值维度不在此查询,由Java侧按id批量组装</p>
*/ */
Page<RecruitAnnouncementListItemVo> selectAnnouncementPage(Page<RecruitAnnouncementListItemVo> page, @Param("publishTimeStart") Instant publishTimeStart, @Param("publishTimeEnd") Instant publishTimeEnd, @Param("applyEndTimeStart") Instant applyEndTimeStart, @Param("applyEndTimeEnd") Instant applyEndTimeEnd, @Param("companyTypes") List<String> companyTypes, @Param("educationNames") List<String> educationNames, @Param("recruitYears") List<Integer> recruitYears, @Param("batchNames") List<String> batchNames, @Param("categoryNames") List<String> categoryNames, @Param("cityNames") List<String> cityNames, @Param("industryNames") List<String> industryNames, @Param("tagNames") List<String> tagNames); Page<RecruitAnnouncementListItemVo> selectAnnouncementPage(Page<RecruitAnnouncementListItemVo> page, @Param("keyword") String keyword, @Param("publishTimeStart") Instant publishTimeStart, @Param("publishTimeEnd") Instant publishTimeEnd, @Param("applyEndTimeStart") Instant applyEndTimeStart, @Param("applyEndTimeEnd") Instant applyEndTimeEnd, @Param("companyTypes") List<String> companyTypes, @Param("educationNames") List<String> educationNames, @Param("recruitYears") List<Integer> recruitYears, @Param("batchNames") List<String> batchNames, @Param("categoryNames") List<String> categoryNames, @Param("cityNames") List<String> cityNames, @Param("industryNames") List<String> industryNames, @Param("tagNames") List<String> tagNames);
} }
@@ -51,6 +51,13 @@
INNER JOIN bg_company c ON ra.company_id = c.id INNER JOIN bg_company c ON ra.company_id = c.id
WHERE c.status = 1 WHERE c.status = 1
AND ra.status = 1 AND ra.status = 1
<!-- 关键字:公司名称 / 招聘岗位 -->
<if test="keyword != null and keyword.length() > 0">
AND (
ra.company_name LIKE CONCAT('%', #{keyword}, '%')
OR ra.recruit_position LIKE CONCAT('%', #{keyword}, '%')
)
</if>
<!-- 筛选条件:发布时间区间 --> <!-- 筛选条件:发布时间区间 -->
<if test="publishTimeStart != null"> <if test="publishTimeStart != null">
AND ra.publish_time <![CDATA[>]]> #{publishTimeStart} AND ra.publish_time <![CDATA[>]]> #{publishTimeStart}