|
@@ -61,7 +61,9 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
.orderByDesc(JobAdvertisedDO::getId));
|
|
.orderByDesc(JobAdvertisedDO::getId));
|
|
}
|
|
}
|
|
|
|
|
|
- /** 根据查询条件查询职位信息 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据查询条件查询职位信息
|
|
|
|
+ **/
|
|
default List<JobAdvertisedDO> list(JobAdvertisedReqVO reqVO) {
|
|
default List<JobAdvertisedDO> list(JobAdvertisedReqVO reqVO) {
|
|
return selectList(new LambdaQueryWrapperX<JobAdvertisedDO>()
|
|
return selectList(new LambdaQueryWrapperX<JobAdvertisedDO>()
|
|
.inIfPresent(JobAdvertisedDO::getId, reqVO.getId())
|
|
.inIfPresent(JobAdvertisedDO::getId, reqVO.getId())
|
|
@@ -78,14 +80,18 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
.orderByDesc(JobAdvertisedDO::getId));
|
|
.orderByDesc(JobAdvertisedDO::getId));
|
|
}
|
|
}
|
|
|
|
|
|
- /** 根据企业id查询正常状态的职位数量 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据企业id查询正常状态的职位数量
|
|
|
|
+ **/
|
|
default Long countByEnterpriseId(Long enterpriseId) {
|
|
default Long countByEnterpriseId(Long enterpriseId) {
|
|
return selectCount(new LambdaQueryWrapperX<JobAdvertisedDO>()
|
|
return selectCount(new LambdaQueryWrapperX<JobAdvertisedDO>()
|
|
.eq(JobAdvertisedDO::getEnterpriseId, enterpriseId)
|
|
.eq(JobAdvertisedDO::getEnterpriseId, enterpriseId)
|
|
.eq(JobAdvertisedDO::getStatus, MendunerStatusEnum.ENABLE.getStatus()));
|
|
.eq(JobAdvertisedDO::getStatus, MendunerStatusEnum.ENABLE.getStatus()));
|
|
}
|
|
}
|
|
|
|
|
|
- /** 根据企业id查询正常状态和没有过期的职位信息 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据企业id查询正常状态和没有过期的职位信息
|
|
|
|
+ **/
|
|
default List<JobAdvertisedDO> selectByEnterpriseIdAndNotExpireTime(Long enterpriseId) {
|
|
default List<JobAdvertisedDO> selectByEnterpriseIdAndNotExpireTime(Long enterpriseId) {
|
|
LambdaQueryWrapperX<JobAdvertisedDO> query = new LambdaQueryWrapperX<>();
|
|
LambdaQueryWrapperX<JobAdvertisedDO> query = new LambdaQueryWrapperX<>();
|
|
query.eq(JobAdvertisedDO::getEnterpriseId, enterpriseId);
|
|
query.eq(JobAdvertisedDO::getEnterpriseId, enterpriseId);
|
|
@@ -94,7 +100,9 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
return selectList(query);
|
|
return selectList(query);
|
|
}
|
|
}
|
|
|
|
|
|
- /** 求职端 - 根据查询条件分页查询正常状态和没有过期的职位信息 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 求职端 - 根据查询条件分页查询正常状态和没有过期的职位信息
|
|
|
|
+ **/
|
|
default PageResult<AppJobAdvertisedHomeRespVO> selectPage(AppJobAdvertisedPageReqVO reqVO) {
|
|
default PageResult<AppJobAdvertisedHomeRespVO> selectPage(AppJobAdvertisedPageReqVO reqVO) {
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
query.selectAll(JobAdvertisedDO.class);
|
|
query.selectAll(JobAdvertisedDO.class);
|
|
@@ -144,6 +152,29 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
return selectJoinPage(reqVO, AppJobAdvertisedHomeRespVO.class, query);
|
|
return selectJoinPage(reqVO, AppJobAdvertisedHomeRespVO.class, query);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 求职端 - 根据查询条件分页查询正常状态和没有过期的职位信息
|
|
|
|
+ **/
|
|
|
|
+ default PageResult<AppJobAdvertisedHomeRespVO> selectPage2(AppJobAdvertisedPageReqVO reqVO) {
|
|
|
|
+ MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
|
|
+ query.selectAll(JobAdvertisedDO.class);
|
|
|
|
+ query.selectAll(EnterpriseDO.class);
|
|
|
|
+ query.innerJoin(EnterpriseDO.class, EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId);
|
|
|
|
+
|
|
|
|
+ query.eq(JobAdvertisedDO::getStatus, JobStatusEnum.ENABLE.getStatus());
|
|
|
|
+ query.eq(EnterpriseDO::getStatus, MendunerStatusEnum.ENABLE.getStatus());
|
|
|
|
+
|
|
|
|
+ notExpireTime(query);
|
|
|
|
+
|
|
|
|
+ query.inIfPresent(JobAdvertisedDO::getId, reqVO.getIds());
|
|
|
|
+ // 置顶
|
|
|
|
+ query.orderByDesc(JobAdvertisedDO::getTop);
|
|
|
|
+
|
|
|
|
+ query.orderByDesc(JobAdvertisedDO::getUpdateTime);
|
|
|
|
+
|
|
|
|
+ return selectJoinPage(reqVO, AppJobAdvertisedHomeRespVO.class, query);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取发布过职位的企业信息
|
|
* 获取发布过职位的企业信息
|
|
@@ -164,13 +195,15 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- /** 根据用户id 查询收藏的职位信息 **/
|
|
|
|
- default PageResult<AppJobAdvertisedRespVO> selectFavoriteJobPage(PageParam pageParam,Long userId) {
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据用户id 查询收藏的职位信息
|
|
|
|
+ **/
|
|
|
|
+ default PageResult<AppJobAdvertisedRespVO> selectFavoriteJobPage(PageParam pageParam, Long userId) {
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
query.selectAssociation(JobAdvertisedDO.class, AppJobAdvertisedRespVO::getJob);
|
|
query.selectAssociation(JobAdvertisedDO.class, AppJobAdvertisedRespVO::getJob);
|
|
query.selectAssociation(EnterpriseDO.class, AppJobAdvertisedRespVO::getEnterprise);
|
|
query.selectAssociation(EnterpriseDO.class, AppJobAdvertisedRespVO::getEnterprise);
|
|
|
|
|
|
- query.innerJoin(PersonJobFavoriteDO.class,PersonJobFavoriteDO::getJobId, JobAdvertisedDO::getId);
|
|
|
|
|
|
+ query.innerJoin(PersonJobFavoriteDO.class, PersonJobFavoriteDO::getJobId, JobAdvertisedDO::getId);
|
|
query.innerJoin(EnterpriseDO.class, EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId);
|
|
query.innerJoin(EnterpriseDO.class, EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId);
|
|
query.eq(PersonJobFavoriteDO::getUserId, userId);
|
|
query.eq(PersonJobFavoriteDO::getUserId, userId);
|
|
|
|
|
|
@@ -178,13 +211,15 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
return selectJoinPage(pageParam, AppJobAdvertisedRespVO.class, query);
|
|
return selectJoinPage(pageParam, AppJobAdvertisedRespVO.class, query);
|
|
}
|
|
}
|
|
|
|
|
|
- /** 根据用户id 查询投递的职位信息 **/
|
|
|
|
- default PageResult<AppJobAdvertisedRespVO> selectCvRelJobPage(PageParam pageParam,Long userId) {
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据用户id 查询投递的职位信息
|
|
|
|
+ **/
|
|
|
|
+ default PageResult<AppJobAdvertisedRespVO> selectCvRelJobPage(PageParam pageParam, Long userId) {
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
query.selectAssociation(JobAdvertisedDO.class, AppJobAdvertisedRespVO::getJob);
|
|
query.selectAssociation(JobAdvertisedDO.class, AppJobAdvertisedRespVO::getJob);
|
|
query.selectAssociation(EnterpriseDO.class, AppJobAdvertisedRespVO::getEnterprise);
|
|
query.selectAssociation(EnterpriseDO.class, AppJobAdvertisedRespVO::getEnterprise);
|
|
|
|
|
|
- query.innerJoin(JobCvRelDO.class,JobCvRelDO::getJobId, JobAdvertisedDO::getId);
|
|
|
|
|
|
+ query.innerJoin(JobCvRelDO.class, JobCvRelDO::getJobId, JobAdvertisedDO::getId);
|
|
query.innerJoin(EnterpriseDO.class, EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId);
|
|
query.innerJoin(EnterpriseDO.class, EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId);
|
|
query.eq(JobCvRelDO::getUserId, userId);
|
|
query.eq(JobCvRelDO::getUserId, userId);
|
|
|
|
|
|
@@ -193,7 +228,9 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- /** 根据企业id集合查询企业数据 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据企业id集合查询企业数据
|
|
|
|
+ **/
|
|
default List<JobAdvertisedDO> selectByEnterpriseIdList(List<Long> ids) {
|
|
default List<JobAdvertisedDO> selectByEnterpriseIdList(List<Long> ids) {
|
|
LambdaQueryWrapper<JobAdvertisedDO> query = new LambdaQueryWrapperX<JobAdvertisedDO>();
|
|
LambdaQueryWrapper<JobAdvertisedDO> query = new LambdaQueryWrapperX<JobAdvertisedDO>();
|
|
query.in(JobAdvertisedDO::getEnterpriseId, ids);
|
|
query.in(JobAdvertisedDO::getEnterpriseId, ids);
|
|
@@ -203,7 +240,9 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- /** 根据查询条件、企业id、用户id 分页查询职位信息 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据查询条件、企业id、用户id 分页查询职位信息
|
|
|
|
+ **/
|
|
default PageResult<JobAdvertisedDO> selectPage(AppRecruitJobPageReqVO reqVO, Long enterpriseId, Long userId) {
|
|
default PageResult<JobAdvertisedDO> selectPage(AppRecruitJobPageReqVO reqVO, Long enterpriseId, Long userId) {
|
|
LambdaQueryWrapper<JobAdvertisedDO> query = new LambdaQueryWrapperX<JobAdvertisedDO>()
|
|
LambdaQueryWrapper<JobAdvertisedDO> query = new LambdaQueryWrapperX<JobAdvertisedDO>()
|
|
.eqIfPresent(JobAdvertisedDO::getAreaId, reqVO.getAreaId())
|
|
.eqIfPresent(JobAdvertisedDO::getAreaId, reqVO.getAreaId())
|
|
@@ -266,7 +305,7 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
.eq(MdeVisitsDO::getType, MdeVisitsEnum.POSITION_PUBLISH_CLICK.getType())
|
|
.eq(MdeVisitsDO::getType, MdeVisitsEnum.POSITION_PUBLISH_CLICK.getType())
|
|
);
|
|
);
|
|
|
|
|
|
- query.between(null != startTime && null != endTime,MdeVisitsDO::getUpdateTime, startTime, endTime);
|
|
|
|
|
|
+ query.between(null != startTime && null != endTime, MdeVisitsDO::getUpdateTime, startTime, endTime);
|
|
|
|
|
|
query.groupBy(JobAdvertisedDO::getId);
|
|
query.groupBy(JobAdvertisedDO::getId);
|
|
query.orderByDesc(MdeVisitsDO::getUpdateTime);
|
|
query.orderByDesc(MdeVisitsDO::getUpdateTime);
|
|
@@ -295,7 +334,7 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
.eq(MdeVisitsDO::getType, MdeVisitsEnum.POSITION_PUBLISH_CLICK.getType())
|
|
.eq(MdeVisitsDO::getType, MdeVisitsEnum.POSITION_PUBLISH_CLICK.getType())
|
|
);
|
|
);
|
|
|
|
|
|
- query.between(null != startTime && null != endTime,MdeVisitsDO::getUpdateTime, startTime, endTime);
|
|
|
|
|
|
+ query.between(null != startTime && null != endTime, MdeVisitsDO::getUpdateTime, startTime, endTime);
|
|
|
|
|
|
Map<String, Object> result = selectJoinMap(query);
|
|
Map<String, Object> result = selectJoinMap(query);
|
|
if (null == result) {
|
|
if (null == result) {
|
|
@@ -311,26 +350,28 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
* @param startTime 开始时间
|
|
* @param startTime 开始时间
|
|
* @param endTime 结束时间
|
|
* @param endTime 结束时间
|
|
**/
|
|
**/
|
|
- default PageResult<RecruitJobAnalysisRespVO> getJobNum(
|
|
|
|
- RecruitAnalysisReqVO reqVO, LocalDateTime startTime, LocalDateTime endTime) {
|
|
|
|
- MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
|
|
- query.selectAll(JobAdvertisedDO.class);
|
|
|
|
|
|
+ default PageResult<RecruitJobAnalysisRespVO> getJobNum(
|
|
|
|
+ RecruitAnalysisReqVO reqVO, LocalDateTime startTime, LocalDateTime endTime) {
|
|
|
|
+ MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
|
|
+ query.selectAll(JobAdvertisedDO.class);
|
|
|
|
|
|
- query.eqIfPresent(JobAdvertisedDO::getEnterpriseId, reqVO.getEnterpriseId());
|
|
|
|
- query.inIfPresent(JobAdvertisedDO::getUserId, reqVO.getUserId());
|
|
|
|
- query.eqIfPresent(JobAdvertisedDO::getId, reqVO.getJobId());
|
|
|
|
- query.eqIfPresent(JobAdvertisedDO::getStatus, reqVO.getJobStatus());
|
|
|
|
|
|
+ query.eqIfPresent(JobAdvertisedDO::getEnterpriseId, reqVO.getEnterpriseId());
|
|
|
|
+ query.inIfPresent(JobAdvertisedDO::getUserId, reqVO.getUserId());
|
|
|
|
+ query.eqIfPresent(JobAdvertisedDO::getId, reqVO.getJobId());
|
|
|
|
+ query.eqIfPresent(JobAdvertisedDO::getStatus, reqVO.getJobStatus());
|
|
|
|
|
|
- query.betweenIfPresent(JobAdvertisedDO::getCreateTime, startTime, endTime);
|
|
|
|
|
|
+ query.betweenIfPresent(JobAdvertisedDO::getCreateTime, startTime, endTime);
|
|
|
|
|
|
- query.orderByDesc(JobAdvertisedDO::getUpdateTime);
|
|
|
|
|
|
+ query.orderByDesc(JobAdvertisedDO::getUpdateTime);
|
|
|
|
|
|
- return selectJoinPage(reqVO, RecruitJobAnalysisRespVO.class, query);
|
|
|
|
|
|
+ return selectJoinPage(reqVO, RecruitJobAnalysisRespVO.class, query);
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- /** 根据查询条件、企业id、用户id 查询excel导出的数据结果 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据查询条件、企业id、用户id 查询excel导出的数据结果
|
|
|
|
+ **/
|
|
default PageResult<AppRecruitJobExportRespVO> page(AppRecruitJobPageReqVO reqVO, Long enterpriseId, Long userId) {
|
|
default PageResult<AppRecruitJobExportRespVO> page(AppRecruitJobPageReqVO reqVO, Long enterpriseId, Long userId) {
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
|
|
|
|
|
|
@@ -359,15 +400,17 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
|
|
query.innerJoin(EnterpriseDO.class, on -> on.eq(EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId));
|
|
query.innerJoin(EnterpriseDO.class, on -> on.eq(EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId));
|
|
query.leftJoin(PositionDO.class, on -> on.eq(PositionDO::getId, JobAdvertisedDO::getPositionId));
|
|
query.leftJoin(PositionDO.class, on -> on.eq(PositionDO::getId, JobAdvertisedDO::getPositionId));
|
|
query.leftJoin(AreaDO.class, on -> on.eq(AreaDO::getId, JobAdvertisedDO::getAreaId));
|
|
query.leftJoin(AreaDO.class, on -> on.eq(AreaDO::getId, JobAdvertisedDO::getAreaId));
|
|
- query.innerJoin(EnterpriseUserBindDO.class,on->on
|
|
|
|
- .eq(EnterpriseUserBindDO::getEnterpriseId,JobAdvertisedDO::getEnterpriseId)
|
|
|
|
- .eq(EnterpriseUserBindDO::getUserId,JobAdvertisedDO::getUserId)
|
|
|
|
|
|
+ query.innerJoin(EnterpriseUserBindDO.class, on -> on
|
|
|
|
+ .eq(EnterpriseUserBindDO::getEnterpriseId, JobAdvertisedDO::getEnterpriseId)
|
|
|
|
+ .eq(EnterpriseUserBindDO::getUserId, JobAdvertisedDO::getUserId)
|
|
);
|
|
);
|
|
|
|
|
|
return selectJoinPage(reqVO, AppRecruitJobExportRespVO.class, query);
|
|
return selectJoinPage(reqVO, AppRecruitJobExportRespVO.class, query);
|
|
}
|
|
}
|
|
|
|
|
|
- /** 过滤过期的职位 **/
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 过滤过期的职位
|
|
|
|
+ **/
|
|
default void notExpireTime(MPJLambdaWrapperX<JobAdvertisedDO> query) {
|
|
default void notExpireTime(MPJLambdaWrapperX<JobAdvertisedDO> query) {
|
|
query.and(wrapper -> wrapper
|
|
query.and(wrapper -> wrapper
|
|
.ge(JobAdvertisedDO::getExpireTime, LocalDateTime.now())
|
|
.ge(JobAdvertisedDO::getExpireTime, LocalDateTime.now())
|