From dd9b0fd496097edad6a90b66d79b4b9838bfafbc Mon Sep 17 00:00:00 2001 From: wangxiangshun Date: Thu, 22 Jan 2026 21:41:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=97=AE=E9=A2=98=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...otakeInitScreQuestionsReplyRecordInfo.java | 3 ++ .../hotake/domain/HotakeRolesApplyInfo.java | 3 ++ ...reQuestionsReplyRecordInfoServiceImpl.java | 1 + .../impl/HotakeRolesApplyInfoServiceImpl.java | 34 ++++++++++++++++--- ...InitScreQuestionsReplyRecordInfoMapper.xml | 4 +-- 5 files changed, 39 insertions(+), 6 deletions(-) diff --git a/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeInitScreQuestionsReplyRecordInfo.java b/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeInitScreQuestionsReplyRecordInfo.java index 57fce76..2d20815 100644 --- a/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeInitScreQuestionsReplyRecordInfo.java +++ b/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeInitScreQuestionsReplyRecordInfo.java @@ -40,6 +40,9 @@ public class HotakeInitScreQuestionsReplyRecordInfo extends BaseEntity @Excel(name = "问题ID") private Long questionId; + @ApiModelProperty("问题文本") + private String questionText; + /** 答案 */ @ApiModelProperty("答案") @Excel(name = "答案") diff --git a/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeRolesApplyInfo.java b/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeRolesApplyInfo.java index d5b3679..0ccd297 100644 --- a/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeRolesApplyInfo.java +++ b/vetti-hotakes/src/main/java/com/vetti/hotake/domain/HotakeRolesApplyInfo.java @@ -157,4 +157,7 @@ public class HotakeRolesApplyInfo extends BaseEntity @ApiModelProperty("岗位申请ID数据集合") private List applyRoleIdList; + @ApiModelProperty("初步筛选问题回答数据集合") + private List screQuestionsReplyRecordInfoList; + } diff --git a/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeInitScreQuestionsReplyRecordInfoServiceImpl.java b/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeInitScreQuestionsReplyRecordInfoServiceImpl.java index b8bfbc9..af73e8d 100644 --- a/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeInitScreQuestionsReplyRecordInfoServiceImpl.java +++ b/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeInitScreQuestionsReplyRecordInfoServiceImpl.java @@ -171,6 +171,7 @@ public class HotakeInitScreQuestionsReplyRecordInfoServiceImpl extends BaseServi */ @Override public int saveHotakeInitScreQuestionsReplyRecordInfo(HotakeInitScreQuestionsReplyRecordInfoVo initScreQuestionsReplyRecordInfoVo) { + log.info("===:{}",JSONUtil.toJsonStr(initScreQuestionsReplyRecordInfoVo)); //先删除对应问题答案记录数据 hotakeInitScreQuestionsReplyRecordInfoMapper.deleteHotakeInitScreQuestionsReplyRecordInfoByRoleApplyId(initScreQuestionsReplyRecordInfoVo.getRoleApplyId()); //批量保存数据 diff --git a/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeRolesApplyInfoServiceImpl.java b/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeRolesApplyInfoServiceImpl.java index d7fe038..4def05e 100644 --- a/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeRolesApplyInfoServiceImpl.java +++ b/vetti-hotakes/src/main/java/com/vetti/hotake/service/impl/HotakeRolesApplyInfoServiceImpl.java @@ -10,15 +10,15 @@ import com.vetti.common.enums.FillTypeEnum; import com.vetti.common.enums.StageEnum; import com.vetti.common.exception.ServiceException; import com.vetti.common.utils.SecurityUtils; -import com.vetti.hotake.domain.HotakeRolesApplyInfo; -import com.vetti.hotake.domain.HotakeRolesApplyOperRecord; -import com.vetti.hotake.domain.HotakeRolesInfo; +import com.vetti.hotake.domain.*; import com.vetti.hotake.domain.dto.HotakeAiCvScoringRankingDto; import com.vetti.hotake.domain.dto.HotakeCandidateCompatibilityDto; import com.vetti.hotake.domain.dto.HotakeCvInfoDto; import com.vetti.hotake.domain.dto.HotakeRolesApplyStageStatisticalDto; import com.vetti.hotake.domain.dto.VcDto.*; import com.vetti.hotake.domain.vo.HotakeRolesApplyStageVo; +import com.vetti.hotake.mapper.HotakeInitScreQuestionsReplyRecordInfoMapper; +import com.vetti.hotake.mapper.HotakeInitialScreeningQuestionsInfoMapper; import com.vetti.hotake.mapper.HotakeRolesApplyInfoMapper; import com.vetti.hotake.mapper.HotakeRolesInfoMapper; import com.vetti.hotake.service.IHotakeRolesApplyInfoService; @@ -53,6 +53,12 @@ public class HotakeRolesApplyInfoServiceImpl extends BaseServiceImpl implements @Autowired private ISysUserService userService; + @Autowired + private HotakeInitScreQuestionsReplyRecordInfoMapper initScreQuestionsReplyRecordInfoMapper; + + @Autowired + private HotakeInitialScreeningQuestionsInfoMapper initialScreeningQuestionsInfoMapper; + /** * 查询候选人岗位申请信息 * @@ -98,6 +104,11 @@ public class HotakeRolesApplyInfoServiceImpl extends BaseServiceImpl implements { List applyInfoList = hotakeRolesApplyInfoMapper.selectHotakeRolesApplyInfoList(hotakeRolesApplyInfo); if(CollectionUtil.isNotEmpty(applyInfoList)) { + + + List screQuestionsReplyRecordInfoList = initScreQuestionsReplyRecordInfoMapper.selectHotakeInitScreQuestionsReplyRecordInfoList(new HotakeInitScreQuestionsReplyRecordInfo()); + + List screeningQuestionsInfoList = initialScreeningQuestionsInfoMapper.selectHotakeInitialScreeningQuestionsInfoList(new HotakeInitialScreeningQuestionsInfo()); //查询岗位数据集合 HotakeRolesInfo query = new HotakeRolesInfo(); // query.setRecruiterId(SecurityUtils.getUserId()); @@ -118,11 +129,26 @@ public class HotakeRolesApplyInfoServiceImpl extends BaseServiceImpl implements applyInfo.setCvInfoDto(cvInfoDto); } if(CollectionUtil.isNotEmpty(applyOperRecords)) { - List operRecordList = applyOperRecords.stream().filter(e->e.getRoleApplyId().longValue() == applyInfo.getId().longValue()).toList(); + List operRecordList = applyOperRecords.stream().filter(e->e.getRoleApplyId()!= null && + e.getRoleApplyId().longValue() == applyInfo.getId().longValue()).toList(); if(CollectionUtil.isNotEmpty(operRecordList)) { applyInfo.setApplyOperRecords(operRecordList); } } + if(CollectionUtil.isNotEmpty(screQuestionsReplyRecordInfoList)) { + List screQuestionsReplyRecordInfos = screQuestionsReplyRecordInfoList.stream(). + filter(e->e.getRoleApplyId() != null && e.getRoleApplyId().longValue() == applyInfo.getId().longValue()).toList(); + if(CollectionUtil.isNotEmpty(screQuestionsReplyRecordInfos)) { + for(HotakeInitScreQuestionsReplyRecordInfo recordInfo : screQuestionsReplyRecordInfos){ + List screeningQuestionsInfos = screeningQuestionsInfoList.stream(). + filter(e->e.getId().longValue() == recordInfo.getQuestionId().longValue()).toList(); + if(CollectionUtil.isNotEmpty(screeningQuestionsInfos)) { + recordInfo.setQuestionText(screeningQuestionsInfos.get(0).getQuestionTitle()); + } + } + } + applyInfo.setScreQuestionsReplyRecordInfoList(screQuestionsReplyRecordInfos); + } } } return applyInfoList; diff --git a/vetti-hotakes/src/main/resources/mapper/hotake/HotakeInitScreQuestionsReplyRecordInfoMapper.xml b/vetti-hotakes/src/main/resources/mapper/hotake/HotakeInitScreQuestionsReplyRecordInfoMapper.xml index 9470d0e..18cab25 100644 --- a/vetti-hotakes/src/main/resources/mapper/hotake/HotakeInitScreQuestionsReplyRecordInfoMapper.xml +++ b/vetti-hotakes/src/main/resources/mapper/hotake/HotakeInitScreQuestionsReplyRecordInfoMapper.xml @@ -104,9 +104,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - insert into hotake_init_scre_questions_reply_record_info( id, role_id, candidate_id, question_id, answer_connect, del_flag, create_by, create_time, update_by, update_time, remark) values + insert into hotake_init_scre_questions_reply_record_info( id, role_id,role_apply_id, candidate_id, question_id, answer_connect, del_flag, create_by, create_time, update_by, update_time, remark) values - ( #{item.id}, #{item.roleId}, #{item.candidateId}, #{item.questionId}, #{item.answerConnect}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark}) + ( #{item.id}, #{item.roleId},#{item.roleApplyId}, #{item.candidateId}, #{item.questionId}, #{item.answerConnect}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark}) \ No newline at end of file