Commit 9827c906 by zhu.zewen

用户新增工号

parent b3deeb2b
...@@ -21,6 +21,8 @@ public class UserCreateReq { ...@@ -21,6 +21,8 @@ public class UserCreateReq {
@NotBlank(message = "手机号不能为空") @NotBlank(message = "手机号不能为空")
@ApiModelProperty(value = "手机号") @ApiModelProperty(value = "手机号")
private String mobile; private String mobile;
@ApiModelProperty(value = "工号")
private String workNo;
@ApiModelProperty(value = "用户类型(角色)") @ApiModelProperty(value = "用户类型(角色)")
private Long userType; private Long userType;
......
...@@ -26,6 +26,8 @@ public class UserDto extends BaseDto implements IStatus { ...@@ -26,6 +26,8 @@ public class UserDto extends BaseDto implements IStatus {
private Long userType; private Long userType;
@ApiModelProperty(value = "手机号") @ApiModelProperty(value = "手机号")
private String mobile; private String mobile;
@ApiModelProperty(value = "工号")
private String workNo;
@ApiModelProperty(value = "权限范围") @ApiModelProperty(value = "权限范围")
private String authDeptList; private String authDeptList;
......
...@@ -21,6 +21,8 @@ public class UserUpdateReq { ...@@ -21,6 +21,8 @@ public class UserUpdateReq {
private String userName; private String userName;
@ApiModelProperty(value = "手机号") @ApiModelProperty(value = "手机号")
private String mobile; private String mobile;
@ApiModelProperty(value = "工号")
private String workNo;
@ApiModelProperty(value = "用户类型(角色)") @ApiModelProperty(value = "用户类型(角色)")
private Long userType; private Long userType;
......
...@@ -18,6 +18,8 @@ public class SysUser extends BaseExtEntity implements IStatus { ...@@ -18,6 +18,8 @@ public class SysUser extends BaseExtEntity implements IStatus {
private String name; private String name;
@ApiModelProperty(value = "手机号") @ApiModelProperty(value = "手机号")
private String mobile; private String mobile;
@ApiModelProperty(value = "工号")
private String workNo;
@ApiModelProperty(value = "密码盐") @ApiModelProperty(value = "密码盐")
private String salt; private String salt;
......
...@@ -37,6 +37,11 @@ public interface UserService { ...@@ -37,6 +37,11 @@ public interface UserService {
return getUserByMobile(mobile) return getUserByMobile(mobile)
.orElseThrow(() -> new ServiceException("未找到用户:" + mobile)); .orElseThrow(() -> new ServiceException("未找到用户:" + mobile));
} }
Optional<UserDto> getUserByWorkNo(String workNo);
default UserDto getUserByWorkNoOrThrow(String workNo) {
return getUserByWorkNo(workNo)
.orElseThrow(() -> new ServiceException("未找到用户:" + workNo));
}
UserDto createUser(UserCreateReq req); UserDto createUser(UserCreateReq req);
UserDto updateUser(UserUpdateReq req); UserDto updateUser(UserUpdateReq req);
......
...@@ -285,7 +285,8 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -285,7 +285,8 @@ public class UserServiceImpl extends AbstractService implements UserService {
private Wrapper<SysUser> buildQuery(UserQueryReq req) { private Wrapper<SysUser> buildQuery(UserQueryReq req) {
LambdaQueryWrapper<SysUser> query = Wrappers.lambdaQuery(SysUser.class) LambdaQueryWrapper<SysUser> query = Wrappers.lambdaQuery(SysUser.class)
.like(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getName, req.getKeyword()).or() .like(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getName, req.getKeyword()).or()
.eq(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getMobile, req.getKeyword()) .eq(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getMobile, req.getKeyword()).or()
.eq(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getWorkNo, req.getKeyword())
// 过滤非系统管理员 // 过滤非系统管理员
.ne(!SpringContextUtils.isPlatformAdmin(), SysUser::getType, PLATFORM_ADMIN.getCode()) .ne(!SpringContextUtils.isPlatformAdmin(), SysUser::getType, PLATFORM_ADMIN.getCode())
.eq(ObjectUtil.isNotEmpty(req.getStatus()), SysUser::getStatus, req.getStatus()); .eq(ObjectUtil.isNotEmpty(req.getStatus()), SysUser::getStatus, req.getStatus());
...@@ -350,6 +351,17 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -350,6 +351,17 @@ public class UserServiceImpl extends AbstractService implements UserService {
return Optional.ofNullable(convertTo(user)); return Optional.ofNullable(convertTo(user));
} }
@Override
public Optional<UserDto> getUserByWorkNo(String workNo) {
if (ObjectUtil.isEmpty(workNo)) {
return Optional.empty();
}
SysUser user = userMapper.selectOne(Wrappers.lambdaQuery(SysUser.class)
.eq(SysUser::getWorkNo, workNo));
return Optional.ofNullable(convertTo(user));
}
@Override @Override
@UserAllowed(types = { PLATFORM_ADMIN}, msg = "不允许普通用户新建用户") @UserAllowed(types = { PLATFORM_ADMIN}, msg = "不允许普通用户新建用户")
...@@ -364,6 +376,13 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -364,6 +376,13 @@ public class UserServiceImpl extends AbstractService implements UserService {
.ifPresent(user -> { .ifPresent(user -> {
throw new ServiceException("手机号已存在"); throw new ServiceException("手机号已存在");
}); });
// 检查工号是否重复
if (ObjectUtil.isNotEmpty(req.getWorkNo())) {
getUserByWorkNo(req.getWorkNo())
.ifPresent(user -> {
throw new ServiceException("工号已存在");
});
}
// 处理密码 // 处理密码
String salt = PasswordUtil.newSalt(); String salt = PasswordUtil.newSalt();
String password = SecureUtil.md5("123456"); String password = SecureUtil.md5("123456");
...@@ -379,6 +398,7 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -379,6 +398,7 @@ public class UserServiceImpl extends AbstractService implements UserService {
SysUser user = new SysUser(); SysUser user = new SysUser();
user.setName(req.getUserName()); user.setName(req.getUserName());
user.setMobile(req.getMobile()); user.setMobile(req.getMobile());
user.setWorkNo(req.getWorkNo());
user.setType(userType); user.setType(userType);
user.setSalt(salt); user.setSalt(salt);
...@@ -423,6 +443,16 @@ public class UserServiceImpl extends AbstractService implements UserService { ...@@ -423,6 +443,16 @@ public class UserServiceImpl extends AbstractService implements UserService {
user.setMobile(req.getMobile()); user.setMobile(req.getMobile());
updated = true; updated = true;
} }
if (updated(req.getWorkNo(), user.getWorkNo())) {
if (ObjectUtil.isNotEmpty(req.getWorkNo())) {
getUserByWorkNo(req.getWorkNo())
.ifPresent(u -> {
throw new ServiceException("工号已存在");
});
}
user.setWorkNo(req.getWorkNo());
updated = true;
}
if (updated(req.getDeptId(), user.getDeptId())) { if (updated(req.getDeptId(), user.getDeptId())) {
user.setDeptId(req.getDeptId()); user.setDeptId(req.getDeptId());
updated = true; updated = true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment