Преглед изворни кода

1、区分企业邀请同意接口

rayson пре 8 месеци
родитељ
комит
00d944cc5a

+ 37 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/jobhunt/invite/AppEnterpriseInviteRecordController.java

@@ -0,0 +1,37 @@
+package com.citu.module.menduner.system.controller.app.jobhunt.invite;
+
+import com.citu.framework.common.pojo.CommonResult;
+import com.citu.framework.security.core.annotations.PreAuthenticated;
+import com.citu.module.menduner.system.controller.app.recruit.invite.vo.AppRecruitEnterpriseInviteConsentReqVO;
+import com.citu.module.menduner.system.service.invite.EnterpriseInviteRecordService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+import static com.citu.framework.common.pojo.CommonResult.success;
+
+@Tag(name = "求职端 - 企业邀请")
+@RestController
+@RequestMapping("/menduner/system/enterprise-invite-record")
+@Validated
+public class AppEnterpriseInviteRecordController {
+
+
+    @Resource
+    private EnterpriseInviteRecordService service;
+
+
+    @PreAuthenticated
+    @PostMapping("/consent")
+    @Operation(summary = "同意加入")
+    public CommonResult<Boolean> consent(AppRecruitEnterpriseInviteConsentReqVO reqVO) {
+        service.jobSeekerConsentToEnterpriseInvite(reqVO);
+        return success(true);
+    }
+
+}

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/invite/AppRecruitEnterpriseInviteRecordController.java

@@ -39,7 +39,7 @@ public class AppRecruitEnterpriseInviteRecordController {
     @PostMapping("/consent")
     @Operation(summary = "同意加入")
     public CommonResult<Boolean> consent(AppRecruitEnterpriseInviteConsentReqVO reqVO) {
-        service.consent(reqVO);
+        service.enterpriseAdminConsentToSubordinateJoin(reqVO);
         return success(true);
     }
 

+ 9 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/invite/EnterpriseInviteRecordService.java

@@ -56,6 +56,14 @@ public interface EnterpriseInviteRecordService {
      */
     PageResult<EnterpriseInviteRecordDO> getEnterpriseInviteRecordPage(EnterpriseInviteRecordPageReqVO pageReqVO);
 
+    // ========== 求职端 ==========
+    /**
+     * 同意加入
+     *
+     * @param reqVO 邀请对象
+     */
+    void jobSeekerConsentToEnterpriseInvite(AppRecruitEnterpriseInviteConsentReqVO reqVO);
+
     // ========== 招聘端 ==========
 
     /**
@@ -63,7 +71,7 @@ public interface EnterpriseInviteRecordService {
      *
      * @param reqVO 邀请对象
      */
-    void consent(AppRecruitEnterpriseInviteConsentReqVO reqVO);
+    void enterpriseAdminConsentToSubordinateJoin(AppRecruitEnterpriseInviteConsentReqVO reqVO);
 
     /**
      * 获得企业邀请记录分页

+ 34 - 8
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/invite/EnterpriseInviteRecordServiceImpl.java

@@ -118,10 +118,8 @@ public class EnterpriseInviteRecordServiceImpl implements EnterpriseInviteRecord
     @CacheEvict(cacheNames = {
             RedisKeyConstants.MDE_ENTERPRISE_TREE
     }, allEntries = true)
-    public void consent(AppRecruitEnterpriseInviteConsentReqVO reqVO) {
-        LoginUser loginUser = LoginUserContext.get();
-        Long enterpriseId = LoginUserContext.getEnterpriseId2(loginUser);
-        Long userId = LoginUserContext.getUserId(loginUser);
+    public void jobSeekerConsentToEnterpriseInvite(AppRecruitEnterpriseInviteConsentReqVO reqVO) {
+        Long userId = LoginUserContext.getUserId();
 
         EnterpriseInviteDO invite = inviteService.getByCode(reqVO.getCode());
 
@@ -166,8 +164,35 @@ public class EnterpriseInviteRecordServiceImpl implements EnterpriseInviteRecord
             userBindService.createUser(userBindDO);
 
 
-        } else {
+        }
+
+        // 增加邀请记录
+        mapper.insert(
+                EnterpriseInviteRecordDO.builder()
+                        .enterpriseId(invite.getEnterpriseId())
+                        .userId(userId)
+                        .inviteEnterpriseId(invite.getEnterpriseId())
+                        .inviteUserId(invite.getUserId())
+                        .type(invite.getType())
+                        .code(invite.getCode())
+                        .build()
+        );
+    }
 
+    @Override
+    @DSTransactional
+    @CacheEvict(cacheNames = {
+            RedisKeyConstants.MDE_ENTERPRISE_TREE
+    }, allEntries = true)
+    public void enterpriseAdminConsentToSubordinateJoin(AppRecruitEnterpriseInviteConsentReqVO reqVO) {
+        Long enterpriseId = LoginUserContext.getEnterpriseId();
+        Long userId = LoginUserContext.getUserId();
+
+        EnterpriseInviteDO invite = inviteService.getByCode(reqVO.getCode());
+        if (EnterpriseInviteTypeEnum.SUBSIDIARY.getType()
+                .equals(invite.getType())) {
+
+            // 查询是否已经加入
             EnterpriseUserBindDO userBind = userBindService
                     .selectByEnterpriseIdAndUserId(enterpriseId, userId);
 
@@ -187,13 +212,12 @@ public class EnterpriseInviteRecordServiceImpl implements EnterpriseInviteRecord
             }
             // 更改企业的上级
             enterpriseService.updateParent(enterpriseId, invite.getEnterpriseId());
-        }
 
+        }
         // 增加邀请记录
         mapper.insert(
                 EnterpriseInviteRecordDO.builder()
-                        .enterpriseId(EnterpriseInviteTypeEnum.COLLEAGUE.getType()
-                                .equals(invite.getType()) ? invite.getEnterpriseId() : enterpriseId)
+                        .enterpriseId(enterpriseId)
                         .userId(userId)
                         .inviteEnterpriseId(invite.getEnterpriseId())
                         .inviteUserId(invite.getUserId())
@@ -201,5 +225,7 @@ public class EnterpriseInviteRecordServiceImpl implements EnterpriseInviteRecord
                         .code(invite.getCode())
                         .build()
         );
+
     }
+
 }