|
@@ -11,7 +11,6 @@ import com.citu.module.menduner.system.controller.appadmin.person.cv.AppAdminJob
|
|
|
import com.citu.module.menduner.system.controller.appadmin.person.cv.AppAdminJobCvRelRespVO;
|
|
|
import com.citu.module.menduner.system.controller.appadmin.person.hire.AppAdminHireJobCvRelPageReqVO;
|
|
|
import com.citu.module.menduner.system.controller.appadmin.person.hire.AppAdminHireJobCvRelRespVO;
|
|
|
-import com.citu.module.menduner.system.controller.appadmin.person.vo.AppAdminPersonSimpleRespVO;
|
|
|
import com.citu.module.menduner.system.controller.base.job.JobCvRelPageReqVO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseDO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.job.JobAdvertisedDO;
|
|
@@ -76,6 +75,39 @@ public interface JobCvRelMapper extends BaseMapperX<JobCvRelDO> {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * 获得赏金投递职位分页
|
|
|
+ **/
|
|
|
+ default PageResult<AppAdminHireJobCvRelRespVO> page(AppAdminHireJobCvRelPageReqVO reqVO) {
|
|
|
+ // 职位投递userId inner 招聘职位userId and 职位投递userId inner 人才信息userId
|
|
|
+ MPJLambdaWrapperX<JobCvRelDO> wrapper = new MPJLambdaWrapperX<>();
|
|
|
+ wrapper.selectAsClass(JobCvRelDO.class, AppAdminHireJobCvRelRespVO.class);
|
|
|
+ wrapper.selectAssociation(JobAdvertisedDO.class, AppAdminJobCvRelRespVO::getJob);
|
|
|
+ wrapper.selectAssociation("person", PersonInfoDO.class, AppAdminHireJobCvRelRespVO::getPerson);
|
|
|
+ wrapper.selectAssociation("recommend", PersonInfoDO.class, AppAdminHireJobCvRelRespVO::getRecommendPerson);
|
|
|
+
|
|
|
+ // 投递的职位 inner 招聘职位
|
|
|
+ wrapper.innerJoin(JobAdvertisedDO.class, JobAdvertisedDO::getId, JobCvRelDO::getJobId);
|
|
|
+ // 招聘职位的条件
|
|
|
+ wrapper.eqIfExists(JobCvRelDO::getJobId, reqVO.getJobId());
|
|
|
+ wrapper.eqIfExists(JobCvRelDO::getStatus, reqVO.getStatus());
|
|
|
+
|
|
|
+ // 投递的职位 inner 人才信息 (投递人)
|
|
|
+ wrapper.innerJoin(PersonInfoDO.class, "person", PersonInfoDO::getUserId, JobCvRelDO::getUserId);
|
|
|
+ // 人才相关的条件
|
|
|
+ wrapper.likeIfExists("person.name", reqVO.getName());
|
|
|
+
|
|
|
+ // 投递的职位 inner 人才信息 (推荐人)
|
|
|
+ wrapper.innerJoin(PersonInfoDO.class, "recommend", PersonInfoDO::getUserId, JobCvRelDO::getRecommendUserId);
|
|
|
+ // 人才相关的条件
|
|
|
+ wrapper.likeIfExists("recommend.name", reqVO.getName());
|
|
|
+
|
|
|
+ setUnfitCandidate(wrapper);
|
|
|
+
|
|
|
+ wrapper.orderByDesc(JobCvRelDO::getUpdateTime);
|
|
|
+ return selectJoinPage(reqVO, AppAdminHireJobCvRelRespVO.class, wrapper);
|
|
|
+ }
|
|
|
+
|
|
|
default PageResult<AppHireJobCvRelRespVO> page(AppHireJobCvRelQueryReqVO reqVO, Long userId) {
|
|
|
// 职位投递userId inner 招聘职位userId and 职位投递userId inner 人才信息userId
|
|
|
MPJLambdaWrapperX<JobCvRelDO> wrapper = new MPJLambdaWrapperX<>();
|
|
@@ -95,11 +127,11 @@ public interface JobCvRelMapper extends BaseMapperX<JobCvRelDO> {
|
|
|
|
|
|
setUnfitCandidate(wrapper);
|
|
|
|
|
|
-
|
|
|
wrapper.orderByDesc(JobCvRelDO::getUpdateTime);
|
|
|
return selectJoinPage(reqVO, AppHireJobCvRelRespVO.class, wrapper);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
/**
|
|
|
* 过滤不合适的候选人
|
|
|
**/
|
|
@@ -113,39 +145,6 @@ public interface JobCvRelMapper extends BaseMapperX<JobCvRelDO> {
|
|
|
wrapper.isNull(UnfitCandidateDO::getId);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 获得赏金投递职位分页
|
|
|
- **/
|
|
|
- default PageResult<AppAdminHireJobCvRelRespVO> page(AppAdminHireJobCvRelPageReqVO reqVO) {
|
|
|
- // 职位投递userId inner 招聘职位userId and 职位投递userId inner 人才信息userId
|
|
|
- MPJLambdaWrapperX<JobCvRelDO> wrapper = new MPJLambdaWrapperX<>();
|
|
|
- wrapper.selectAsClass(JobCvRelDO.class, AppAdminHireJobCvRelRespVO.class);
|
|
|
- wrapper.selectAssociation(JobAdvertisedDO.class, AppAdminJobCvRelRespVO::getJob);
|
|
|
- wrapper.selectAssociation("person", PersonInfoDO.class, AppAdminHireJobCvRelRespVO::getPerson);
|
|
|
- wrapper.selectAssociation("recommend", PersonInfoDO.class, AppAdminHireJobCvRelRespVO::getRecommendPerson);
|
|
|
-
|
|
|
- // 投递的职位 inner 招聘职位
|
|
|
- wrapper.innerJoin(JobAdvertisedDO.class, JobAdvertisedDO::getId, JobCvRelDO::getJobId);
|
|
|
- // 招聘职位的条件
|
|
|
- wrapper.eqIfExists(JobCvRelDO::getJobId, reqVO.getJobId());
|
|
|
- wrapper.eqIfExists(JobCvRelDO::getStatus, reqVO.getStatus());
|
|
|
-
|
|
|
- // 投递的职位 inner 人才信息 (投递人)
|
|
|
- wrapper.innerJoin(PersonInfoDO.class, "person", PersonInfoDO::getUserId, JobCvRelDO::getUserId);
|
|
|
- // 人才相关的条件
|
|
|
- wrapper.likeIfExists("person.name", reqVO.getName());
|
|
|
-
|
|
|
- // 投递的职位 inner 人才信息 (推荐人)
|
|
|
- wrapper.innerJoin(PersonInfoDO.class, "recommend", PersonInfoDO::getUserId, JobCvRelDO::getRecommendUserId);
|
|
|
- // 人才相关的条件
|
|
|
- wrapper.likeIfExists("recommend.name", reqVO.getName());
|
|
|
-
|
|
|
- setUnfitCandidate(wrapper);
|
|
|
-
|
|
|
- wrapper.orderByDesc(JobCvRelDO::getUpdateTime);
|
|
|
- return selectJoinPage(reqVO, AppAdminHireJobCvRelRespVO.class, wrapper);
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
// 根据用户ID和职位id判断15天内是否有数据,如果有返回true
|
|
|
default Boolean checkDataWithin15Day(Long userId, Long jobId) {
|
|
@@ -155,6 +154,16 @@ public interface JobCvRelMapper extends BaseMapperX<JobCvRelDO> {
|
|
|
.ge(JobCvRelDO::getCreateTime, LocalDateTime.now().minusDays(15))) > 0;
|
|
|
}
|
|
|
|
|
|
+ // 根据用户id和职位id获取投递简历信息
|
|
|
+ default JobCvRelDO selectByUserIdAndJobId(Long userId, Long jobId) {
|
|
|
+ return selectOne(new LambdaQueryWrapperX<JobCvRelDO>()
|
|
|
+ .eq(JobCvRelDO::getUserId, userId)
|
|
|
+ .eq(JobCvRelDO::getJobId, jobId)
|
|
|
+ // 小于15天内投递的
|
|
|
+ .lt(JobCvRelDO::getCreateTime, LocalDateTime.now().minusDays(15))
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
default List<JobCvRelDO> selectByJobIdList(List<Long> jobIdList) {
|
|
|
return selectList(new LambdaQueryWrapperX<JobCvRelDO>()
|
|
|
.in(JobCvRelDO::getJobId, jobIdList)
|
|
@@ -167,13 +176,6 @@ public interface JobCvRelMapper extends BaseMapperX<JobCvRelDO> {
|
|
|
}
|
|
|
|
|
|
|
|
|
- /**
|
|
|
- * 获取投递简历中的推荐人列表
|
|
|
- **/
|
|
|
- default List<AppAdminPersonSimpleRespVO> getRecommendUser() {
|
|
|
- return null;
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 查询用户被看过的简历
|
|
|
**/
|