|
@@ -10,9 +10,11 @@ import com.citu.module.menduner.system.controller.base.person.PersonMapQueryReqV
|
|
|
import com.citu.module.menduner.system.controller.base.person.PersonQueryReqVO;
|
|
|
import com.citu.module.menduner.system.controller.base.person.info.PersonInfoPageReqVO;
|
|
|
import com.citu.module.menduner.system.controller.base.person.info.PersonInfoRespVO;
|
|
|
+import com.citu.module.menduner.system.controller.base.person.info.PersonSimpleRespVO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseTalentPoolDO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.job.JobInterestedDO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.person.PersonInfoDO;
|
|
|
+import com.citu.module.menduner.system.dal.dataobject.user.MdeUserDO;
|
|
|
import com.citu.module.menduner.system.util.JoinHelper;
|
|
|
import org.apache.ibatis.annotations.Mapper;
|
|
|
|
|
@@ -97,7 +99,7 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
/**
|
|
|
* 根据用户id和查询条件查询人才信息
|
|
|
**/
|
|
|
- default PageResult<PersonInfoRespVO> queryPage(PersonMapQueryReqVO reqVO, Long[] ids,Long enterpriseId) {
|
|
|
+ default PageResult<PersonInfoRespVO> queryPage(PersonMapQueryReqVO reqVO, Long[] ids, Long enterpriseId) {
|
|
|
MPJLambdaWrapperX<PersonInfoDO> query = new MPJLambdaWrapperX<>();
|
|
|
query.selectAsClass(PersonInfoDO.class, PersonInfoRespVO.class);
|
|
|
query.likeIfPresent(PersonInfoDO::getName, reqVO.getName());
|
|
@@ -105,7 +107,7 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
// 连接用户表设置vip条件
|
|
|
JoinHelper.joinAndFilterVipUser(query, PersonInfoDO::getUserId);
|
|
|
// 过滤屏蔽用户
|
|
|
- JoinHelper.filterBlockedUsersForEnterprise(query, PersonInfoDO::getUserId,enterpriseId);
|
|
|
+ JoinHelper.filterBlockedUsersForEnterprise(query, PersonInfoDO::getUserId, enterpriseId);
|
|
|
if (null != reqVO.getAge()) {
|
|
|
LocalDate now = LocalDate.now(ZoneId.systemDefault());
|
|
|
if (reqVO.getAge().length >= 1) {
|
|
@@ -142,8 +144,9 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
|
|
|
/**
|
|
|
* 根据查询条件查询人才信息
|
|
|
+ *
|
|
|
* @param enterpriseId 企业id
|
|
|
- * @param reqVO 查询条件
|
|
|
+ * @param reqVO 查询条件
|
|
|
**/
|
|
|
default PageResult<PersonInfoRespVO> queryPage(PersonQueryReqVO reqVO, Long enterpriseId) {
|
|
|
MPJLambdaWrapperX<PersonInfoDO> query = new MPJLambdaWrapperX<>();
|
|
@@ -153,7 +156,7 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
// 连接用户表设置vip条件
|
|
|
JoinHelper.joinAndFilterVipUser(query, PersonInfoDO::getUserId);
|
|
|
// 过滤屏蔽用户
|
|
|
- JoinHelper.filterBlockedUsersForEnterprise(query, PersonInfoDO::getUserId,enterpriseId);
|
|
|
+ JoinHelper.filterBlockedUsersForEnterprise(query, PersonInfoDO::getUserId, enterpriseId);
|
|
|
// 求职意向
|
|
|
query.leftJoin(JobInterestedDO.class, JobInterestedDO::getUserId, PersonInfoDO::getUserId);
|
|
|
|
|
@@ -164,10 +167,10 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
|
|
|
query.in(CollUtil.isNotEmpty(reqVO.getPositionIds()), JobInterestedDO::getPositionId, reqVO.getPositionIds())
|
|
|
.or()
|
|
|
- .in(CollUtil.isNotEmpty(reqVO.getAreaIds()),JobInterestedDO::getWorkAreaId, reqVO.getAreaIds())
|
|
|
+ .in(CollUtil.isNotEmpty(reqVO.getAreaIds()), JobInterestedDO::getWorkAreaId, reqVO.getAreaIds())
|
|
|
;
|
|
|
|
|
|
- if(CollUtil.isNotEmpty(reqVO.getAreaIds())) {
|
|
|
+ if (CollUtil.isNotEmpty(reqVO.getAreaIds())) {
|
|
|
StringBuilder jsonContainsClause = new StringBuilder();
|
|
|
for (Long areaId : reqVO.getAreaIds()) {
|
|
|
if (jsonContainsClause.length() > 0) {
|
|
@@ -194,10 +197,11 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
|
|
|
/**
|
|
|
* 根据id查询人才信息
|
|
|
- * @param ids 人才id集合
|
|
|
+ *
|
|
|
+ * @param ids 人才id集合
|
|
|
* @param enterpriseId 操作的企业
|
|
|
- * @param pageParam 分页
|
|
|
- * **/
|
|
|
+ * @param pageParam 分页
|
|
|
+ **/
|
|
|
default PageResult<PersonInfoRespVO> queryPageById(List<Long> ids,
|
|
|
Long enterpriseId,
|
|
|
PageParam pageParam) {
|
|
@@ -207,9 +211,24 @@ public interface PersonInfoMapper extends BaseMapperX<PersonInfoDO> {
|
|
|
// 连接用户表设置vip条件
|
|
|
JoinHelper.joinAndFilterVipUser(query, PersonInfoDO::getUserId);
|
|
|
// 过滤屏蔽用户
|
|
|
- JoinHelper.filterBlockedUsersForEnterprise(query, PersonInfoDO::getUserId,enterpriseId);
|
|
|
+ JoinHelper.filterBlockedUsersForEnterprise(query, PersonInfoDO::getUserId, enterpriseId);
|
|
|
query.orderByDesc(PersonInfoDO::getUpdateTime);
|
|
|
return selectJoinPage(pageParam, PersonInfoRespVO.class, query);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据邀请码查询邀请的人才信息
|
|
|
+ *
|
|
|
+ * @param userId 邀请码
|
|
|
+ * @param pageParam 分页
|
|
|
+ **/
|
|
|
+ default PageResult<PersonSimpleRespVO> queryInvitePersonByUserId(Long userId, PageParam pageParam) {
|
|
|
+ MPJLambdaWrapperX<PersonInfoDO> query = new MPJLambdaWrapperX<>();
|
|
|
+ query.selectAsClass(PersonInfoDO.class, PersonSimpleRespVO.class);
|
|
|
+ query.innerJoin(MdeUserDO.class, MdeUserDO::getId, PersonInfoDO::getUserId);
|
|
|
+ query.eq(MdeUserDO::getInviteCode, userId);
|
|
|
+ return selectJoinPage(pageParam, PersonSimpleRespVO.class, query);
|
|
|
+ }
|
|
|
+
|
|
|
}
|