Browse Source

Merge branch 'tall3' of dd.tall.wiki:ccsens_wiki/ccsenscloud into tall3

tall3
zy_Java 4 years ago
parent
commit
8aea22f446
  1. 9
      common/src/main/java/com/ccsens/common/bean/dto/CMemberDto.java
  2. 6
      common/src/main/java/com/ccsens/common/service/IMemberService.java
  3. 49
      common/src/main/java/com/ccsens/common/service/MemberService.java

9
common/src/main/java/com/ccsens/common/bean/dto/CMemberDto.java

@ -17,4 +17,13 @@ public class CMemberDto {
private Long newUserId;
}
@Data
public static class SaveMember{
private Long projectId;
private String roleName;
private String name;
private String phone;
private Long userId;
}
}

6
common/src/main/java/com/ccsens/common/service/IMemberService.java

@ -15,4 +15,10 @@ public interface IMemberService {
* @param param 新userId和旧userId
*/
void mergeUser(CMemberDto.MergeUser param);
/**
* 添加成员并绑定角色
* @param param 项目id/角色名称
*/
void addMemberForProject(CMemberDto.SaveMember param);
}

49
common/src/main/java/com/ccsens/common/service/MemberService.java

@ -1,10 +1,19 @@
package com.ccsens.common.service;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.cloudutil.bean.tall.dto.ProjectDto;
import com.ccsens.cloudutil.feign.Tall3FeignClient;
import com.ccsens.common.bean.dto.CMemberDto;
import com.ccsens.common.bean.po.ProMember;
import com.ccsens.common.bean.po.ProRole;
import com.ccsens.common.bean.po.ProRoleMember;
import com.ccsens.common.persist.dao.ProMemberDao;
import com.ccsens.common.persist.dao.ProRoleDao;
import com.ccsens.common.persist.dao.ProRoleMemberDao;
import com.ccsens.common.persist.dao.RelevanceDao;
import com.ccsens.common.util.CommonCodeError;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@ -27,6 +36,12 @@ public class MemberService implements IMemberService{
private RelevanceDao relevanceDao;
@Resource
private Tall3FeignClient tall3FeignClient;
@Resource
private ProRoleDao roleDao;
@Resource
private Snowflake snowflake;
@Resource
private ProRoleMemberDao roleMemberDao;
@Override
public void relevancePhone(CMemberDto.PhoneAndUserId param) {
@ -64,4 +79,38 @@ public class MemberService implements IMemberService{
//任务状态记录表
relevanceDao.mergeStatusRecord(param.getOldUserId(),param.getNewUserId());
}
@Override
public void addMemberForProject(CMemberDto.SaveMember param) {
ProRole role = roleDao.findByNameAndProjectId(param.getRoleName(), param.getProjectId());
if (ObjectUtil.isNull(role)) {
throw new BaseException(CommonCodeError.ROLE_ERROR);
}
Long userOfMemberId = proMemberDao.findUserOfMemberId(param.getProjectId(), param.getUserId());
if (ObjectUtil.isNull(userOfMemberId)) {
ProMember member = new ProMember();
member.setId(snowflake.nextId());
member.setUserId(param.getUserId());
member.setProjectId(param.getProjectId());
member.setPhone(param.getPhone());
member.setName(param.getName());
proMemberDao.insertSelective(member);
ProRoleMember roleMember = new ProRoleMember();
roleMember.setId(snowflake.nextId());
roleMember.setMemberId(member.getId());
roleMember.setRoleId(role.getId());
roleMemberDao.insertSelective(roleMember);
}else {
List<Long> memberOfRoleIds = roleMemberDao.findMemberOfRoleIds(userOfMemberId);
if (memberOfRoleIds.contains(role.getId())){
return;
}
ProRoleMember roleMember = new ProRoleMember();
roleMember.setId(snowflake.nextId());
roleMember.setMemberId(userOfMemberId);
roleMember.setRoleId(role.getId());
roleMemberDao.insertSelective(roleMember);
}
}
}

Loading…
Cancel
Save