diff --git a/common/src/main/java/com/ccsens/common/bean/dto/CMemberDto.java b/common/src/main/java/com/ccsens/common/bean/dto/CMemberDto.java index a5eda84d..fc12cee8 100644 --- a/common/src/main/java/com/ccsens/common/bean/dto/CMemberDto.java +++ b/common/src/main/java/com/ccsens/common/bean/dto/CMemberDto.java @@ -6,6 +6,7 @@ import lombok.Data; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; +import javax.validation.constraints.Pattern; import java.util.List; /** @@ -66,6 +67,7 @@ public class CMemberDto { @ApiModelProperty("成员名") private String name; @NotBlank(message = "手机号不能为空") + @Pattern(regexp="^[1]([3-9])[0-9]{9}$",message="请输入正确的手机号") @ApiModelProperty("手机号") private String phone; @ApiModelProperty("头像") @@ -80,6 +82,7 @@ public class CMemberDto { private Long memberId; @ApiModelProperty("成员名") private String name; + @Pattern(regexp="^[1]([3-9])[0-9]{9}$",message="请输入正确的手机号") @ApiModelProperty("手机号") private String phone; @ApiModelProperty("头像") diff --git a/common/src/main/java/com/ccsens/common/persist/dao/ProRoleMemberDao.java b/common/src/main/java/com/ccsens/common/persist/dao/ProRoleMemberDao.java index c84de53f..915cd8b5 100644 --- a/common/src/main/java/com/ccsens/common/persist/dao/ProRoleMemberDao.java +++ b/common/src/main/java/com/ccsens/common/persist/dao/ProRoleMemberDao.java @@ -35,5 +35,9 @@ public interface ProRoleMemberDao extends ProRoleMemberMapper { */ void delByRoleId(@Param("roleId") Long roleId); - + /** + * 删除该成员和角色的关联信息 + * @param memberId 成员id + */ + void delByMemberId(@Param("memberId") Long memberId); } diff --git a/common/src/main/java/com/ccsens/common/service/MemberService.java b/common/src/main/java/com/ccsens/common/service/MemberService.java index c1d443b4..d64bfd5a 100644 --- a/common/src/main/java/com/ccsens/common/service/MemberService.java +++ b/common/src/main/java/com/ccsens/common/service/MemberService.java @@ -190,7 +190,15 @@ public class MemberService implements IMemberService{ proMember.setAvatarUrl(param.getAvatarUrl()); } if(StrUtil.isNotEmpty(param.getPhone())){ - Long memberUserId = null; + //检查手机号是否存在 + ProMemberExample memberExample = new ProMemberExample(); + memberExample.createCriteria().andProjectIdEqualTo(proMember.getProjectId()).andPhoneEqualTo(param.getPhone()); + List memberList = proMemberDao.selectByExample(memberExample); + if(CollectionUtil.isNotEmpty(memberList)){ + throw new BaseException(CommonCodeError.PROJECT_MEMBER_PHONE); + } + //获取手机号对应的userId + Long memberUserId = 0L; JsonResponse userIdByPhone = tall3FeignClient.getUserIdByPhone(param.getPhone()); if(ObjectUtil.isNotNull(userIdByPhone) && userIdByPhone.getCode() == 200){ memberUserId = userIdByPhone.getData(); @@ -231,6 +239,8 @@ public class MemberService implements IMemberService{ if (pm == null || pm < 1) { throw new BaseException(CommonCodeError.NOT_PERMISSION); } + //删除以前的成员角色关联信息 + roleMemberDao.delByMemberId(param.getMemberId()); //分配角色 if(CollectionUtil.isNotEmpty(param.getRoleIdList())){ param.getRoleIdList().forEach(roleId -> { diff --git a/common/src/main/java/com/ccsens/common/service/TaskService.java b/common/src/main/java/com/ccsens/common/service/TaskService.java index 71536cd1..2b35b42c 100644 --- a/common/src/main/java/com/ccsens/common/service/TaskService.java +++ b/common/src/main/java/com/ccsens/common/service/TaskService.java @@ -673,14 +673,14 @@ public class TaskService implements ITaskService { taskOfType.setLabelId(regular); } labelBusinessDao.insertSelective(taskOfType); - //任务关系表(父任务)(项目id) - if (ObjectUtil.isNotNull(param.getParentTaskId())) { + //TODO 任务关系表(父任务)(项目id) +// if (ObjectUtil.isNotNull(param.getParentTaskId())) { ProParentTask proParentTask = new ProParentTask(); proParentTask.setId(snowflake.nextId()); - proParentTask.setParentTaskDetailId(param.getParentTaskId()); + proParentTask.setParentTaskDetailId(param.getParentTaskId() == null ? param.getProjectId() : param.getParentTaskId()); proParentTask.setTaskDetailId(proTaskDetail.getId()); parentTaskDao.insertSelective(proParentTask); - } +// } //添加负责人 if (CollectionUtil.isNotEmpty(param.getRoleIdList())) { saveTaskRole(param.getRoleIdList(), userId, proTaskDetail.getId(), (byte) 0); diff --git a/common/src/main/resources/mapper_dao/ProMemberDao.xml b/common/src/main/resources/mapper_dao/ProMemberDao.xml index 7b20838b..4327035c 100644 --- a/common/src/main/resources/mapper_dao/ProMemberDao.xml +++ b/common/src/main/resources/mapper_dao/ProMemberDao.xml @@ -129,8 +129,7 @@ SELECT id, `name`, - phone, - CONCAT(LEFT(phone,3), '****',RIGHT(phone,4)), + CONCAT(LEFT(phone,3), '****',RIGHT(phone,4)) as phone, avatar_url as avatarUrl FROM t_pro_member diff --git a/common/src/main/resources/mapper_dao/ProRoleMemberDao.xml b/common/src/main/resources/mapper_dao/ProRoleMemberDao.xml index 0fe82eb4..ee7f9477 100644 --- a/common/src/main/resources/mapper_dao/ProRoleMemberDao.xml +++ b/common/src/main/resources/mapper_dao/ProRoleMemberDao.xml @@ -9,6 +9,14 @@ where role_id = #{roleId} + + update + t_pro_role_member + set + rec_status = 2 + where + member_id = #{memberId} +