mirror of
https://gitee.com/y_project/RuoYi-Cloud.git
synced 2026-02-01 06:21:56 +08:00
[feat] 新增编辑用户信息的内部接口
This commit is contained in:
4
pom.xml
4
pom.xml
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
|
|
||||||
<name>ruoyi</name>
|
<name>ruoyi</name>
|
||||||
<url>http://www.ruoyi.vip</url>
|
<url>http://www.ruoyi.vip</url>
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<maven.compiler.source>11</maven.compiler.source>
|
<maven.compiler.source>11</maven.compiler.source>
|
||||||
<maven.compiler.target>11</maven.compiler.target>
|
<maven.compiler.target>11</maven.compiler.target>
|
||||||
<ruoyi.version>3.6.41.0.2</ruoyi.version>
|
<ruoyi.version>3.6.41.0.3</ruoyi.version>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-api</artifactId>
|
<artifactId>ruoyi-api</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.ruoyi.system.api;
|
package com.ruoyi.system.api;
|
||||||
|
|
||||||
|
import com.ruoyi.system.api.inner.InnerRemoteUserService;
|
||||||
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
@@ -20,17 +21,8 @@ import com.ruoyi.system.api.model.LoginUser;
|
|||||||
* @author ruoyi
|
* @author ruoyi
|
||||||
*/
|
*/
|
||||||
@FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class)
|
@FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class)
|
||||||
public interface RemoteUserService
|
public interface RemoteUserService extends InnerRemoteUserService
|
||||||
{
|
{
|
||||||
/**
|
|
||||||
* 通过用户ID查询用户信息
|
|
||||||
*
|
|
||||||
* @param userId 用户ID
|
|
||||||
* @param source 请求来源
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
@GetMapping("/user/detail/{userId}")
|
|
||||||
public R<LoginUser> infoById(@PathVariable("userId") Long userId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
||||||
/**
|
/**
|
||||||
* 通过用户名查询用户信息
|
* 通过用户名查询用户信息
|
||||||
*
|
*
|
||||||
@@ -41,15 +33,6 @@ public interface RemoteUserService
|
|||||||
@GetMapping("/user/info/{username}")
|
@GetMapping("/user/info/{username}")
|
||||||
public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
|
|
||||||
/**
|
|
||||||
* 通过手机号查询用户信息
|
|
||||||
*
|
|
||||||
* @param phoneNumber 用户名
|
|
||||||
* @param source 请求来源
|
|
||||||
* @return 结果
|
|
||||||
*/
|
|
||||||
@GetMapping("/user/info/phoneNumber/{phoneNumber:\\d+}")
|
|
||||||
public R<LoginUser> getUserInfoByPhoneNumber(@PathVariable("phoneNumber") String phoneNumber, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
||||||
/**
|
/**
|
||||||
* 注册用户信息
|
* 注册用户信息
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.ruoyi.system.api.factory;
|
package com.ruoyi.system.api.factory;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.cloud.openfeign.FallbackFactory;
|
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||||
@@ -11,7 +12,7 @@ import com.ruoyi.system.api.model.LoginUser;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户服务降级处理
|
* 用户服务降级处理
|
||||||
*
|
*
|
||||||
* @author ruoyi
|
* @author ruoyi
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
@@ -25,9 +26,9 @@ public class RemoteUserFallbackFactory implements FallbackFactory<RemoteUserServ
|
|||||||
log.error("用户服务调用失败:{}", throwable.getMessage());
|
log.error("用户服务调用失败:{}", throwable.getMessage());
|
||||||
return new RemoteUserService()
|
return new RemoteUserService()
|
||||||
{
|
{
|
||||||
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public R<LoginUser> infoById(Long userId, String source)
|
public R<LoginUser> infoById_Inner(Long userId, @NotNull String source) {
|
||||||
{
|
|
||||||
return R.fail("获取用户失败:" + throwable.getMessage());
|
return R.fail("获取用户失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -37,8 +38,9 @@ public class RemoteUserFallbackFactory implements FallbackFactory<RemoteUserServ
|
|||||||
return R.fail("获取用户失败:" + throwable.getMessage());
|
return R.fail("获取用户失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public R<LoginUser> getUserInfoByPhoneNumber(String phoneNumber, String source) {
|
public R<LoginUser> getUserInfoByPhoneNumber_Inner(@NotNull String phoneNumber, @NotNull String source) {
|
||||||
return R.fail("获取用户失败:" + throwable.getMessage());
|
return R.fail("获取用户失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -53,6 +55,12 @@ public class RemoteUserFallbackFactory implements FallbackFactory<RemoteUserServ
|
|||||||
{
|
{
|
||||||
return R.fail("记录用户登录信息失败:" + throwable.getMessage());
|
return R.fail("记录用户登录信息失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
@Override
|
||||||
|
public R<LoginUser> edit_Inner(@NotNull LoginUser user, @NotNull String source) {
|
||||||
|
return R.fail("修改用户信息失败:" + throwable.getMessage());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,32 @@
|
|||||||
|
package com.ruoyi.system.api.inner;
|
||||||
|
|
||||||
|
import com.ruoyi.common.core.constant.SecurityConstants;
|
||||||
|
import com.ruoyi.common.core.domain.R;
|
||||||
|
import com.ruoyi.system.api.model.LoginUser;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
public interface InnerRemoteUserService {
|
||||||
|
/**
|
||||||
|
* 通过用户ID查询用户信息
|
||||||
|
*
|
||||||
|
* @param userId 用户ID
|
||||||
|
* @param source 请求来源
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@GetMapping("/inner/user/detail/{userId}")
|
||||||
|
R<LoginUser> infoById_Inner(@PathVariable("userId") Long userId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过手机号查询用户信息
|
||||||
|
*
|
||||||
|
* @param phoneNumber 用户名
|
||||||
|
* @param source 请求来源
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@GetMapping("/inner/user/info/phoneNumber/{phoneNumber:\\d+}")
|
||||||
|
R<LoginUser> getUserInfoByPhoneNumber_Inner(@PathVariable("phoneNumber") String phoneNumber, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
|
|
||||||
|
@PutMapping("/inner/user")
|
||||||
|
R<LoginUser> edit_Inner(@RequestBody LoginUser user, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
||||||
|
}
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-common</artifactId>
|
<artifactId>ruoyi-common</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-modules</artifactId>
|
<artifactId>ruoyi-modules</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-modules</artifactId>
|
<artifactId>ruoyi-modules</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-modules</artifactId>
|
<artifactId>ruoyi-modules</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-modules</artifactId>
|
<artifactId>ruoyi-modules</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -134,48 +134,6 @@ public class SysUserController extends BaseController
|
|||||||
return R.ok(sysUserVo);
|
return R.ok(sysUserVo);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取当前用户信息
|
|
||||||
*/
|
|
||||||
@InnerAuth
|
|
||||||
@GetMapping("/info/phoneNumber/{phoneNumber:\\d+}")
|
|
||||||
public R<LoginUser> infoByPhone(@PathVariable("phoneNumber") String phoneNumber)
|
|
||||||
{
|
|
||||||
SysUser sysUser = userService.selectUserByPhoneNumber(phoneNumber);
|
|
||||||
if (StringUtils.isNull(sysUser))
|
|
||||||
{
|
|
||||||
return R.fail("用户名或密码错误");
|
|
||||||
}
|
|
||||||
// 角色集合
|
|
||||||
Set<String> roles = permissionService.getRolePermission(sysUser);
|
|
||||||
// 权限集合
|
|
||||||
Set<String> permissions = permissionService.getMenuPermission(sysUser);
|
|
||||||
LoginUser sysUserVo = new LoginUser();
|
|
||||||
sysUserVo.setSysUser(sysUser);
|
|
||||||
sysUserVo.setRoles(roles);
|
|
||||||
sysUserVo.setPermissions(permissions);
|
|
||||||
return R.ok(sysUserVo);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 根据ID获取用户信息
|
|
||||||
*/
|
|
||||||
@InnerAuth
|
|
||||||
@GetMapping("/detail/{userId}")
|
|
||||||
public R<LoginUser> infoById(@PathVariable("userId") Long userId)
|
|
||||||
{
|
|
||||||
SysUser sysUser = userService.selectUserById(userId);
|
|
||||||
// 角色集合
|
|
||||||
Set<String> roles = permissionService.getRolePermission(sysUser);
|
|
||||||
// 权限集合
|
|
||||||
Set<String> permissions = permissionService.getMenuPermission(sysUser);
|
|
||||||
LoginUser sysUserVo = new LoginUser();
|
|
||||||
sysUserVo.setSysUser(sysUser);
|
|
||||||
sysUserVo.setRoles(roles);
|
|
||||||
sysUserVo.setPermissions(permissions);
|
|
||||||
return R.ok(sysUserVo);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册用户信息
|
* 注册用户信息
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -0,0 +1,107 @@
|
|||||||
|
package com.ruoyi.system.controller.inner
|
||||||
|
|
||||||
|
import com.ruoyi.common.core.domain.R
|
||||||
|
import com.ruoyi.common.core.utils.StringUtils
|
||||||
|
import com.ruoyi.common.log.annotation.Log
|
||||||
|
import com.ruoyi.common.log.enums.BusinessType
|
||||||
|
import com.ruoyi.common.security.annotation.InnerAuth
|
||||||
|
import com.ruoyi.system.api.domain.SysUser
|
||||||
|
import com.ruoyi.system.api.model.LoginUser
|
||||||
|
import com.ruoyi.system.service.ISysDeptService
|
||||||
|
import com.ruoyi.system.service.ISysPermissionService
|
||||||
|
import com.ruoyi.system.service.ISysRoleService
|
||||||
|
import com.ruoyi.system.service.ISysUserService
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired
|
||||||
|
import org.springframework.validation.annotation.Validated
|
||||||
|
import org.springframework.web.bind.annotation.*
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户信息
|
||||||
|
*
|
||||||
|
* @author hsdllcw
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/inner/user")
|
||||||
|
class InnerSysUserController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
lateinit var userService: ISysUserService
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
lateinit var permissionService: ISysPermissionService
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
lateinit var deptService: ISysDeptService
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
lateinit var roleService: ISysRoleService
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前用户信息
|
||||||
|
*/
|
||||||
|
@InnerAuth
|
||||||
|
@GetMapping("/info/phoneNumber/{phoneNumber:\\d+}")
|
||||||
|
fun infoByPhone(@PathVariable("phoneNumber") phoneNumber: String?): R<LoginUser> {
|
||||||
|
val sysUser: SysUser = userService.selectUserByPhoneNumber(phoneNumber)
|
||||||
|
if (StringUtils.isNull(sysUser)) {
|
||||||
|
return R.fail("用户名或密码错误")
|
||||||
|
}
|
||||||
|
// 角色集合
|
||||||
|
val roles: Set<String> = permissionService.getRolePermission(sysUser)
|
||||||
|
// 权限集合
|
||||||
|
val permissions: Set<String> = permissionService.getMenuPermission(sysUser)
|
||||||
|
val sysUserVo = LoginUser()
|
||||||
|
sysUserVo.sysUser = sysUser
|
||||||
|
sysUserVo.roles = roles
|
||||||
|
sysUserVo.permissions = permissions
|
||||||
|
return R.ok(sysUserVo)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据ID获取用户信息
|
||||||
|
*/
|
||||||
|
@InnerAuth
|
||||||
|
@GetMapping("/detail/{userId}")
|
||||||
|
fun infoById(@PathVariable("userId") userId: Long?): R<LoginUser> {
|
||||||
|
val sysUser: SysUser = userService.selectUserById(userId)
|
||||||
|
// 角色集合
|
||||||
|
val roles: Set<String> = permissionService.getRolePermission(sysUser)
|
||||||
|
// 权限集合
|
||||||
|
val permissions: Set<String> = permissionService.getMenuPermission(sysUser)
|
||||||
|
val sysUserVo = LoginUser()
|
||||||
|
sysUserVo.sysUser = sysUser
|
||||||
|
sysUserVo.roles = roles
|
||||||
|
sysUserVo.permissions = permissions
|
||||||
|
return R.ok(sysUserVo)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改用户
|
||||||
|
*/
|
||||||
|
@InnerAuth
|
||||||
|
@PutMapping
|
||||||
|
@Log(title = "用户修改本人信息", businessType = BusinessType.UPDATE)
|
||||||
|
fun edit(@Validated @RequestBody loginUser: LoginUser): R<LoginUser> {
|
||||||
|
val originUser = userService.selectUserById(loginUser.userid)
|
||||||
|
val targetUser = loginUser.sysUser
|
||||||
|
userService.checkUserAllowed(originUser)
|
||||||
|
userService.checkUserDataScope(originUser.userId)
|
||||||
|
deptService.checkDeptDataScope(originUser.deptId)
|
||||||
|
roleService.checkRoleDataScope(*originUser.roleIds)
|
||||||
|
if (!userService.checkUserNameUnique(targetUser)) {
|
||||||
|
return error("修改用户'" + targetUser.userName + "'失败,登录账号已存在")
|
||||||
|
} else if (StringUtils.isNotEmpty(targetUser.phonenumber) && !userService.checkPhoneUnique(targetUser)) {
|
||||||
|
return error("修改用户'" + targetUser.userName + "'失败,手机号码已存在")
|
||||||
|
} else if (StringUtils.isNotEmpty(targetUser.email) && !userService.checkEmailUnique(targetUser)) {
|
||||||
|
return error("修改用户'" + targetUser.userName + "'失败,邮箱账号已存在")
|
||||||
|
}
|
||||||
|
originUser.userName = targetUser.userName ?: originUser.userName
|
||||||
|
originUser.phonenumber = targetUser.phonenumber ?: originUser.phonenumber
|
||||||
|
originUser.email = targetUser.email ?: originUser.email
|
||||||
|
originUser.avatar = targetUser.avatar ?: originUser.avatar
|
||||||
|
originUser.updateBy = originUser.userName
|
||||||
|
userService.updateUser(originUser)
|
||||||
|
return R.ok(loginUser)
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -914,7 +914,7 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// 版本号
|
// 版本号
|
||||||
version: "3.6.41.0.2",
|
version: "3.6.41.0.3",
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi</artifactId>
|
<artifactId>ruoyi</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
<artifactId>ruoyi-visual</artifactId>
|
<artifactId>ruoyi-visual</artifactId>
|
||||||
<version>3.6.41.0.2</version>
|
<version>3.6.41.0.3</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user