diff --git a/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/controller/admin/user/UserController.java b/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/controller/admin/user/UserController.java index 00992cd..6f15e47 100644 --- a/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/controller/admin/user/UserController.java +++ b/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/controller/admin/user/UserController.java @@ -170,4 +170,17 @@ public class UserController { return success(userService.importUserList(list, updateSupport)); } + @GetMapping("/get/phone") + @Operation(summary = "手机号查询用户") + @Parameter(name = "phone", description = "手机号", required = true, example = "15898763434") + @PreAuthorize("@ss.hasPermission('system:user:query')") + public CommonResult getUser(@RequestParam("phone") String phone) { + AdminUserDO user = userService.getUserByPhone(phone); + if (user == null) { + return success(null); + } + // 拼接数据 + DeptDO dept = deptService.getDept(user.getDeptId()); + return success(UserConvert.INSTANCE.convert(user, dept)); + } } diff --git a/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserService.java b/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserService.java index 9b36a0b..1b022c4 100644 --- a/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserService.java +++ b/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserService.java @@ -214,4 +214,6 @@ public interface AdminUserService { */ AdminUserDO getUserByOpenId(String openId); + AdminUserDO getUserByPhone(String phone); + } diff --git a/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserServiceImpl.java b/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserServiceImpl.java index bd85c29..e52b493 100644 --- a/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserServiceImpl.java +++ b/ensign-module-system/ensign-module-system-biz/src/main/java/com/ensign/crm/module/system/service/user/AdminUserServiceImpl.java @@ -529,4 +529,22 @@ public class AdminUserServiceImpl implements AdminUserService { return user; } } + + @Override + public AdminUserDO getUserByPhone(String phone) { + LambdaQueryWrapperX queryWrapperX = new LambdaQueryWrapperX<>(); + queryWrapperX.eq(AdminUserDO::getMobile, phone); + List users = userMapper.selectList(queryWrapperX); + if (users.isEmpty()) { + return null; + } + AdminUserDO user = users.get(0); + Integer status = user.getStatus(); + + if (Objects.equals(status, CommonStatusEnum.DISABLE.getStatus())) { + throw exception(AUTH_LOGIN_USER_DISABLED); + } else { + return user; + } + } }