完成部分 SysUserServiceImplTest 单元测试
This commit is contained in:
@@ -149,9 +149,9 @@ public class SysUserController {
|
||||
// 手动创建导出 demo
|
||||
List<SysUserImportExcelVO> list = Arrays.asList(
|
||||
SysUserImportExcelVO.builder().username("yudao").deptId(1L).email("yudao@iocoder.cn").mobile("15601691300")
|
||||
.nickname("芋道").status(CommonStatusEnum.ENABLE.getStatus()).sex(SysSexEnum.MALE.getSEX()).build(),
|
||||
.nickname("芋道").status(CommonStatusEnum.ENABLE.getStatus()).sex(SysSexEnum.MALE.getSex()).build(),
|
||||
SysUserImportExcelVO.builder().username("yuanma").deptId(2L).email("yuanma@iocoder.cn").mobile("15601701300")
|
||||
.nickname("源码").status(CommonStatusEnum.DISABLE.getStatus()).sex(SysSexEnum.FEMALE.getSEX()).build()
|
||||
.nickname("源码").status(CommonStatusEnum.DISABLE.getStatus()).sex(SysSexEnum.FEMALE.getSex()).build()
|
||||
);
|
||||
|
||||
// 输出
|
||||
|
||||
@@ -3,9 +3,9 @@ package cn.iocoder.dashboard.modules.system.controller.user.vo.profile;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.Email;
|
||||
import javax.validation.constraints.Pattern;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
@ApiModel("用户个人信息更新 Request VO")
|
||||
@@ -22,7 +22,7 @@ public class SysUserProfileUpdateReqVO {
|
||||
private String email;
|
||||
|
||||
@ApiModelProperty(value = "手机号码", example = "15601691300")
|
||||
@Pattern(regexp = "^1(3|4|5|7|8)\\d{9}$",message = "手机号码格式错误")
|
||||
@Length(min = 11, max = 11, message = "手机号长度必须 11 位")
|
||||
private String mobile;
|
||||
|
||||
@ApiModelProperty(value = "用户性别", example = "1", notes = "参见 SysSexEnum 枚举类")
|
||||
|
||||
@@ -2,10 +2,10 @@ package cn.iocoder.dashboard.modules.system.controller.user.vo.user;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.Email;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.Pattern;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -40,7 +40,7 @@ public class SysUserBaseVO {
|
||||
private String email;
|
||||
|
||||
@ApiModelProperty(value = "手机号码", example = "15601691300")
|
||||
@Pattern(regexp = "^1(3|4|5|7|8)\\d{9}$",message = "手机号码格式错误")
|
||||
@Length(min = 11, max = 11, message = "手机号长度必须 11 位")
|
||||
private String mobile;
|
||||
|
||||
@ApiModelProperty(value = "用户性别", example = "1", notes = "参见 SysSexEnum 枚举类")
|
||||
|
||||
@@ -3,6 +3,11 @@ package cn.iocoder.dashboard.modules.system.enums.common;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 性别的枚举值
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum SysSexEnum {
|
||||
@@ -10,6 +15,9 @@ public enum SysSexEnum {
|
||||
MALE(1), // 男
|
||||
FEMALE(2); // 女
|
||||
|
||||
private final Integer SEX;
|
||||
/**
|
||||
* 性别
|
||||
*/
|
||||
private final Integer sex;
|
||||
|
||||
}
|
||||
|
||||
@@ -6,17 +6,11 @@ import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.iocoder.dashboard.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.dashboard.common.exception.ServiceException;
|
||||
import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil;
|
||||
import cn.iocoder.dashboard.common.pojo.PageResult;
|
||||
import cn.iocoder.dashboard.modules.infra.service.file.InfFileService;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.profile.SysUserProfileUpdatePasswordReqVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.profile.SysUserProfileUpdateReqVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.SysUserCreateReqVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.SysUserExportReqVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.SysUserImportExcelVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.SysUserImportRespVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.SysUserPageReqVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.SysUserUpdateReqVO;
|
||||
import cn.iocoder.dashboard.modules.system.controller.user.vo.user.*;
|
||||
import cn.iocoder.dashboard.modules.system.convert.user.SysUserConvert;
|
||||
import cn.iocoder.dashboard.modules.system.dal.dataobject.dept.SysDeptDO;
|
||||
import cn.iocoder.dashboard.modules.system.dal.dataobject.dept.SysPostDO;
|
||||
@@ -33,14 +27,9 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.io.InputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
|
||||
import static cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.dashboard.modules.system.enums.SysErrorCodeConstants.*;
|
||||
|
||||
|
||||
@@ -142,8 +131,6 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
updateObj.setId(id);
|
||||
updateObj.setStatus(status);
|
||||
userMapper.updateById(updateObj);
|
||||
// 删除用户关联数据
|
||||
permissionService.processUserDeleted(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -152,6 +139,8 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
this.checkUserExists(id);
|
||||
// 删除用户
|
||||
userMapper.deleteById(id);
|
||||
// 删除用户关联数据
|
||||
permissionService.processUserDeleted(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -227,7 +216,7 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
}
|
||||
SysUserDO user = userMapper.selectById(id);
|
||||
if (user == null) {
|
||||
throw ServiceExceptionUtil.exception(USER_NOT_EXISTS);
|
||||
throw exception(USER_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -241,10 +230,10 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
}
|
||||
// 如果 id 为空,说明不用比较是否为相同 id 的用户
|
||||
if (id == null) {
|
||||
throw ServiceExceptionUtil.exception(USER_USERNAME_EXISTS);
|
||||
throw exception(USER_USERNAME_EXISTS);
|
||||
}
|
||||
if (!user.getId().equals(id)) {
|
||||
throw ServiceExceptionUtil.exception(USER_USERNAME_EXISTS);
|
||||
throw exception(USER_USERNAME_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -258,10 +247,10 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
}
|
||||
// 如果 id 为空,说明不用比较是否为相同 id 的用户
|
||||
if (id == null) {
|
||||
throw ServiceExceptionUtil.exception(USER_EMAIL_EXISTS);
|
||||
throw exception(USER_EMAIL_EXISTS);
|
||||
}
|
||||
if (!user.getId().equals(id)) {
|
||||
throw ServiceExceptionUtil.exception(USER_EMAIL_EXISTS);
|
||||
throw exception(USER_EMAIL_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -275,10 +264,10 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
}
|
||||
// 如果 id 为空,说明不用比较是否为相同 id 的用户
|
||||
if (id == null) {
|
||||
throw ServiceExceptionUtil.exception(USER_MOBILE_EXISTS);
|
||||
throw exception(USER_MOBILE_EXISTS);
|
||||
}
|
||||
if (!user.getId().equals(id)) {
|
||||
throw ServiceExceptionUtil.exception(USER_MOBILE_EXISTS);
|
||||
throw exception(USER_MOBILE_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -288,10 +277,10 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
}
|
||||
SysDeptDO dept = deptService.getDept(deptId);
|
||||
if (dept == null) {
|
||||
throw ServiceExceptionUtil.exception(DEPT_NOT_FOUND);
|
||||
throw exception(DEPT_NOT_FOUND);
|
||||
}
|
||||
if (!CommonStatusEnum.ENABLE.getStatus().equals(dept.getStatus())) {
|
||||
throw ServiceExceptionUtil.exception(DEPT_NOT_ENABLE);
|
||||
throw exception(DEPT_NOT_ENABLE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -301,16 +290,16 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
}
|
||||
List<SysPostDO> posts = postService.getPosts(postIds, null);
|
||||
if (CollUtil.isEmpty(posts)) {
|
||||
throw ServiceExceptionUtil.exception(POST_NOT_FOUND);
|
||||
throw exception(POST_NOT_FOUND);
|
||||
}
|
||||
Map<Long, SysPostDO> postMap = CollectionUtils.convertMap(posts, SysPostDO::getId);
|
||||
postIds.forEach(postId -> {
|
||||
SysPostDO post = postMap.get(postId);
|
||||
if (post == null) {
|
||||
throw ServiceExceptionUtil.exception(POST_NOT_FOUND);
|
||||
throw exception(POST_NOT_FOUND);
|
||||
}
|
||||
if (!CommonStatusEnum.ENABLE.getStatus().equals(post.getStatus())) {
|
||||
throw ServiceExceptionUtil.exception(POST_NOT_ENABLE, post.getName());
|
||||
throw exception(POST_NOT_ENABLE, post.getName());
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -324,10 +313,10 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
private void checkOldPassword(Long id, String oldPassword) {
|
||||
SysUserDO user = userMapper.selectById(id);
|
||||
if (user == null) {
|
||||
throw ServiceExceptionUtil.exception(USER_NOT_EXISTS);
|
||||
throw exception(USER_NOT_EXISTS);
|
||||
}
|
||||
if (!passwordEncoder.matches(oldPassword, user.getPassword())) {
|
||||
throw ServiceExceptionUtil.exception(USER_PASSWORD_FAILED);
|
||||
throw exception(USER_PASSWORD_FAILED);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -335,7 +324,7 @@ public class SysUserServiceImpl implements SysUserService {
|
||||
@Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入
|
||||
public SysUserImportRespVO importUsers(List<SysUserImportExcelVO> importUsers, boolean isUpdateSupport) {
|
||||
if (CollUtil.isEmpty(importUsers)) {
|
||||
throw ServiceExceptionUtil.exception(USER_IMPORT_LIST_IS_EMPTY);
|
||||
throw exception(USER_IMPORT_LIST_IS_EMPTY);
|
||||
}
|
||||
SysUserImportRespVO respVO = SysUserImportRespVO.builder().createUsernames(new ArrayList<>())
|
||||
.updateUsernames(new ArrayList<>()).failureUsernames(new LinkedHashMap<>()).build();
|
||||
|
||||
Reference in New Issue
Block a user