Sfoglia il codice sorgente

调整移除人才库和加入人才库,避免出现异常BUG

DESKTOP-VAEGFGM\zqc 2 mesi fa
parent
commit
e0e9d640c9

+ 6 - 2
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/enterprise/EnterpriseTalentPoolMapper.java

@@ -1,10 +1,13 @@
 package com.citu.module.menduner.system.dal.mysql.enterprise;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.citu.framework.mybatis.core.mapper.BaseMapperX;
 import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseTalentPoolDO;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 /**
  * 企业人才库 Mapper
  *
@@ -15,8 +18,9 @@ public interface EnterpriseTalentPoolMapper extends BaseMapperX<EnterpriseTalent
 
 
     /** 根据企业id和用户id查询是否存在于人才库 */
-    default EnterpriseTalentPoolDO selectByEnterpriseIdAndUserId( Long enterpriseId, Long userId) {
-        return selectOne(EnterpriseTalentPoolDO::getEnterpriseId, enterpriseId, EnterpriseTalentPoolDO::getUserId, userId);
+    default List<EnterpriseTalentPoolDO> selectByEnterpriseIdAndUserId(Long enterpriseId, Long userId) {
+
+        return selectList(EnterpriseTalentPoolDO::getEnterpriseId, enterpriseId, EnterpriseTalentPoolDO::getUserId, userId);
     }
 
 }

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/interview/InterviewInviteServiceImpl.java

@@ -271,6 +271,8 @@ public class InterviewInviteServiceImpl implements InterviewInviteService {
             return PageResult.empty();
         }
         result.getList().forEach(resp -> {
+//            resp.getInTalentPool();  // 是否可以加入人才库判断
+//
             if (null != resp.getJob() && null != resp.getJob().getAreaId()) {
                 resp.getJob().setArea(areaService.getById(resp.getJob().getAreaId()));
             }

+ 9 - 5
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/person/PersonIntegrationServiceImpl.java

@@ -49,6 +49,7 @@ import com.citu.module.menduner.system.service.position.PositionService;
 import com.citu.module.menduner.system.util.RedisUtils;
 import org.jetbrains.annotations.NotNull;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 import org.springframework.validation.annotation.Validated;
 
@@ -478,8 +479,8 @@ public class PersonIntegrationServiceImpl implements PersonIntegrationService {
 
     @Override
     public void addEnterpriseTalentPool(Long enterpriseId, Long userId) {
-        EnterpriseTalentPoolDO talentPool = talentPoolMapper.selectByEnterpriseIdAndUserId(enterpriseId, userId);
-        if (null != talentPool) {
+        List<EnterpriseTalentPoolDO> talentPool = talentPoolMapper.selectByEnterpriseIdAndUserId(enterpriseId, userId);
+        if (!talentPool.isEmpty()) {
             return;
         }
         talentPoolMapper.insert(
@@ -490,13 +491,16 @@ public class PersonIntegrationServiceImpl implements PersonIntegrationService {
         );
     }
 
+    @Transactional
     @Override
     public void removeEnterpriseTalentPool(Long enterpriseId, Long userId) {
-        EnterpriseTalentPoolDO talentPool = talentPoolMapper.selectByEnterpriseIdAndUserId(enterpriseId, userId);
-        if (null == talentPool) {
+        List<EnterpriseTalentPoolDO> talentPools = talentPoolMapper.selectByEnterpriseIdAndUserId(enterpriseId, userId);
+        if (talentPools.isEmpty()) {
             return;
         }
-        talentPoolMapper.deleteById(talentPool.getId());
+        for (EnterpriseTalentPoolDO talentPool : talentPools) {
+            talentPoolMapper.deleteById(talentPool.getId());
+        }
     }