Kaynağa Gözat

登录信息返回增加用户信息

Gaokun Wang 1 ay önce
ebeveyn
işleme
285097a463
19 değiştirilmiş dosya ile 102 ekleme ve 143 silme
  1. 3 10
      eco-common/com-core/src/main/java/org/eco/vip/orm/pojo/LoginUserStorage.java
  2. 4 4
      eco-common/com-orm/src/main/java/org/eco/vip/orm/listener/EntityInsertListener.java
  3. 4 4
      eco-common/com-orm/src/main/java/org/eco/vip/orm/listener/EntityUpdateListener.java
  4. 9 9
      eco-common/com-security/src/main/java/org/eco/vip/security/core/service/SaPermissionImpl.java
  5. 18 17
      eco-common/com-security/src/main/java/org/eco/vip/security/utils/LoginHelper.java
  6. 2 2
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/controller/auth/AuthController.java
  7. 6 6
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/controller/user/UserController.java
  8. 18 2
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/auth/pojo/LoginVO.java
  9. 0 15
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/menu/Menu.java
  10. 0 16
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/menu/pojo/MenuBO.java
  11. 0 15
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/menu/pojo/MenuVO.java
  12. 2 2
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/AuthService.java
  13. 2 2
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/IAuthService.java
  14. 3 3
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/IAuthStrategy.java
  15. 13 13
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/LoginService.java
  16. 11 11
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/PasswordAuthStrategy.java
  17. 0 2
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/menu/MenuService.java
  18. 7 7
      eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/role/RoleService.java
  19. 0 3
      eco-start/src/main/resources/db/mysql/V1_0_0_1__sys-init-ddl.sql

+ 3 - 10
eco-common/com-core/src/main/java/org/eco/vip/orm/pojo/LoginUser.java → eco-common/com-core/src/main/java/org/eco/vip/orm/pojo/LoginUserStorage.java

@@ -10,14 +10,12 @@ import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
-import org.eco.vip.orm.pojo.dto.RoleDTO;
 
 import java.io.Serializable;
-import java.util.List;
 import java.util.Set;
 
 /**
- * @description LoginUser
+ * @description LoginUserStorage
  *
  * @author GaoKunW
  * @date 2025/7/2 16:13
@@ -26,7 +24,7 @@ import java.util.Set;
 @NoArgsConstructor
 @AllArgsConstructor
 @Builder
-public class LoginUser implements Serializable {
+public class LoginUserStorage implements Serializable {
 
     /**
      * 租户ID
@@ -49,7 +47,7 @@ public class LoginUser implements Serializable {
     private String orgName;
 
     /**
-     * 用户唯一标识
+     * token
      */
     private String token;
 
@@ -112,11 +110,6 @@ public class LoginUser implements Serializable {
      */
     private String nickname;
 
-    /**
-     * 角色对象
-     */
-    private List<RoleDTO> roles;
-
     /**
      * 数据权限 当前角色ID
      */

+ 4 - 4
eco-common/com-orm/src/main/java/org/eco/vip/orm/listener/EntityInsertListener.java

@@ -10,7 +10,7 @@ import cn.hutool.core.util.ObjectUtil;
 import com.mybatisflex.annotation.InsertListener;
 import org.eco.vip.orm.domain.BaseEntity;
 import org.eco.vip.orm.exception.BusinessException;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.eco.vip.orm.utils.ObjUtils;
 import org.eco.vip.security.utils.LoginHelper;
 
@@ -28,10 +28,10 @@ public class EntityInsertListener implements InsertListener {
     public void onInsert(Object entity) {
         try {
             if (ObjectUtil.isNotNull(entity) && (entity instanceof BaseEntity baseEntity)) {
-                LoginUser loginUser = LoginHelper.getLoginUser();
+                LoginUserStorage loginUserStorage = LoginHelper.getLoginUser();
                 String loginUserId = null;
-                if (ObjUtils.isNotNull(loginUser)) {
-                    loginUserId = loginUser.getUserId();
+                if (ObjUtils.isNotNull(loginUserStorage)) {
+                    loginUserId = loginUserStorage.getUserId();
                 }
                 Date createTime = ObjectUtil.isNotNull(baseEntity.getCreateTime())
                         ? baseEntity.getCreateTime() : new Date();

+ 4 - 4
eco-common/com-orm/src/main/java/org/eco/vip/orm/listener/EntityUpdateListener.java

@@ -10,7 +10,7 @@ import cn.hutool.core.util.ObjectUtil;
 import com.mybatisflex.annotation.UpdateListener;
 import org.eco.vip.orm.domain.BaseEntity;
 import org.eco.vip.orm.exception.BusinessException;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.eco.vip.orm.utils.ObjUtils;
 import org.eco.vip.security.utils.LoginHelper;
 
@@ -27,10 +27,10 @@ public class EntityUpdateListener implements UpdateListener {
     public void onUpdate(Object entity) {
         try {
             if (ObjectUtil.isNotNull(entity) && (entity instanceof BaseEntity baseEntity)) {
-                LoginUser loginUser = LoginHelper.getLoginUser();
+                LoginUserStorage loginUserStorage = LoginHelper.getLoginUser();
                 String loginUserId = null;
-                if (ObjUtils.isNotNull(loginUser)) {
-                    loginUserId = loginUser.getUserId();
+                if (ObjUtils.isNotNull(loginUserStorage)) {
+                    loginUserId = loginUserStorage.getUserId();
                 }
                 if (ObjectUtil.isNull(baseEntity.getUpdateBy())) {
                     baseEntity.setUpdateBy(loginUserId);

+ 9 - 9
eco-common/com-security/src/main/java/org/eco/vip/security/core/service/SaPermissionImpl.java

@@ -7,7 +7,7 @@ package org.eco.vip.security.core.service;
 
 import cn.dev33.satoken.stp.StpInterface;
 import org.eco.vip.orm.enums.UserType;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.eco.vip.orm.utils.ObjUtils;
 import org.eco.vip.security.utils.LoginHelper;
 
@@ -23,26 +23,26 @@ import java.util.List;
 public class SaPermissionImpl implements StpInterface {
     @Override
     public List<String> getPermissionList(Object o, String loginType) {
-        LoginUser loginUser = LoginHelper.getLoginUser();
+        LoginUserStorage loginUserStorage = LoginHelper.getLoginUser();
         UserType userType = null;
-        if (ObjUtils.isNotNull(loginUser)) {
-            userType = UserType.getUserType(loginUser.getUserType());
+        if (ObjUtils.isNotNull(loginUserStorage)) {
+            userType = UserType.getUserType(loginUserStorage.getUserType());
         }
         if (userType == UserType.PC_USER) {
-            return new ArrayList<>(loginUser.getPermissionCodes());
+            return new ArrayList<>(loginUserStorage.getPermissionCodes());
         }  // 其他
         return new ArrayList<>();
     }
 
     @Override
     public List<String> getRoleList(Object o, String loginType) {
-        LoginUser loginUser = LoginHelper.getLoginUser();
+        LoginUserStorage loginUserStorage = LoginHelper.getLoginUser();
         UserType userType = null;
-        if (ObjUtils.isNotNull(loginUser)) {
-            userType = UserType.getUserType(loginUser.getUserType());
+        if (ObjUtils.isNotNull(loginUserStorage)) {
+            userType = UserType.getUserType(loginUserStorage.getUserType());
         }
         if (userType == UserType.PC_USER) {
-            return new ArrayList<>(loginUser.getRoleCodes());
+            return new ArrayList<>(loginUserStorage.getRoleCodes());
         }  // 其他
         return new ArrayList<>();
     }

+ 18 - 17
eco-common/com-security/src/main/java/org/eco/vip/security/utils/LoginHelper.java

@@ -15,7 +15,7 @@ import cn.hutool.core.convert.Convert;
 import cn.hutool.core.util.ObjectUtil;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.eco.vip.orm.utils.ServletUtils;
 
 /**
@@ -32,7 +32,6 @@ public class LoginHelper {
     public static final String USER_NAME_KEY = "userName";
     public static final String USER_ACCOUNT_KEY = "account";
     public static final String ORG_KEY = "orgId";
-    public static final String ORG_NAME_KEY = "orgName";
     public static final String CLIENT_KEY = "clientId";
 
     /**
@@ -44,31 +43,33 @@ public class LoginHelper {
      * 登录系统 基于 设备类型
      * 针对相同用户体系不同设备
      *
-     * @param loginUser 登录用户信息
+     * @param loginUserStorage 登录用户信息
      * @param model     配置参数
      */
-    public static void login(LoginUser loginUser, SaLoginParameter model) {
+    public static void login(LoginUserStorage loginUserStorage, SaLoginParameter model) {
         SaStorage storage = SaHolder.getStorage();
-        storage.set(LOGIN_USER_KEY, loginUser);
-        storage.set(TENANT_KEY, loginUser.getTenantId());
-        storage.set(USER_KEY, loginUser.getUserId());
-        storage.set(ORG_KEY, loginUser.getOrgId());
+        storage.set(LOGIN_USER_KEY, loginUserStorage);
+        storage.set(TENANT_KEY, loginUserStorage.getTenantId());
+        storage.set(USER_KEY, loginUserStorage.getUserId());
+        storage.set(USER_NAME_KEY, loginUserStorage.getUserName());
+        storage.set(USER_ACCOUNT_KEY, loginUserStorage.getAccount());
+        storage.set(ORG_KEY, loginUserStorage.getOrgId());
         model = ObjectUtil.defaultIfNull(model, new SaLoginParameter());
         // 登录,生成token
-        StpUtil.login(loginUser.getLoginId(),
-                model.setExtra(TENANT_KEY, loginUser.getTenantId())
-                        .setExtra(USER_KEY, loginUser.getUserId())
-                        .setExtra(USER_NAME_KEY, loginUser.getUserName())
-                        .setExtra(USER_ACCOUNT_KEY, loginUser.getAccount())
-                        .setExtra(ORG_KEY, loginUser.getOrgId())
+        StpUtil.login(loginUserStorage.getLoginId(),
+                model.setExtra(TENANT_KEY, loginUserStorage.getTenantId())
+                        .setExtra(USER_KEY, loginUserStorage.getUserId())
+                        .setExtra(USER_ACCOUNT_KEY, loginUserStorage.getAccount())
+                        .setExtra(USER_NAME_KEY, loginUserStorage.getUserName())
+                        .setExtra(ORG_KEY, loginUserStorage.getOrgId())
         );
-        StpUtil.getTokenSession().set(LOGIN_USER_KEY, loginUser);
+        StpUtil.getTokenSession().set(LOGIN_USER_KEY, loginUserStorage);
     }
 
     /**
      * 获取用户(多级缓存)
      */
-    public static LoginUser getLoginUser() {
+    public static LoginUserStorage getLoginUser() {
         if (!StpUtil.isLogin() && ServletUtils.getParameter("anonymity") != null) {
             return null;
         }
@@ -77,7 +78,7 @@ public class LoginHelper {
         if (ObjectUtil.isNull(session)) {
             return null;
         }
-        return (LoginUser) session.get(LOGIN_USER_KEY);
+        return (LoginUserStorage) session.get(LOGIN_USER_KEY);
     }
 
     /**

+ 2 - 2
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/controller/auth/AuthController.java

@@ -10,7 +10,7 @@ import cn.dev33.satoken.stp.StpUtil;
 import jakarta.annotation.Resource;
 import lombok.extern.slf4j.Slf4j;
 import org.eco.vip.auth.domain.auth.pojo.AuthQuery;
-import org.eco.vip.auth.domain.auth.pojo.AuthVO;
+import org.eco.vip.auth.domain.auth.pojo.LoginVO;
 import org.eco.vip.auth.domain.client.pojo.ClientVO;
 import org.eco.vip.auth.service.auth.IAuthService;
 import org.eco.vip.auth.service.client.IClientService;
@@ -50,7 +50,7 @@ public class AuthController {
     private IClientService clientService;
 
     @PostMapping("/login")
-    public CommonResult<AuthVO> login(@RequestBody String body) {
+    public CommonResult<LoginVO> login(@RequestBody String body) {
         AuthQuery authQueryBody = JsonUtils.parseObject(body, AuthQuery.class);
         // 校验参数
         ValidatorUtils.validate(authQueryBody);

+ 6 - 6
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/controller/user/UserController.java

@@ -15,7 +15,7 @@ import org.eco.vip.auth.domain.user.pojo.UserBO;
 import org.eco.vip.auth.domain.user.pojo.UserVO;
 import org.eco.vip.auth.service.user.IUserService;
 import org.eco.vip.orm.pojo.CommonResult;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.eco.vip.orm.pojo.PageResult;
 import org.eco.vip.orm.utils.ObjUtils;
 import org.eco.vip.security.utils.LoginHelper;
@@ -87,17 +87,17 @@ public class UserController {
     @GetMapping("/info")
     public CommonResult<LoginUserVO> getInfo() {
         LoginUserVO loginUserVO = new LoginUserVO();
-        LoginUser loginUser = LoginHelper.getLoginUser();
-        if (ObjUtils.isNull(loginUser)) {
+        LoginUserStorage loginUserStorage = LoginHelper.getLoginUser();
+        if (ObjUtils.isNull(loginUserStorage)) {
             return fail("用户无权限!");
         }
-        UserVO userVO = userService.selectById(loginUser.getUserId());
+        UserVO userVO = userService.selectById(loginUserStorage.getUserId());
         if (ObjUtils.isNull(userVO)) {
             return fail("用户无权限!");
         }
         loginUserVO.setUser(userVO);
-        loginUserVO.setPermissionCodes(loginUser.getPermissionCodes());
-        loginUserVO.setRoleCodes(loginUser.getRoleCodes());
+        loginUserVO.setPermissionCodes(loginUserStorage.getPermissionCodes());
+        loginUserVO.setRoleCodes(loginUserStorage.getRoleCodes());
         return success(loginUserVO);
     }
 }

+ 18 - 2
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/auth/pojo/AuthVO.java → eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/auth/pojo/LoginVO.java

@@ -10,6 +10,9 @@ import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import org.eco.vip.auth.domain.user.pojo.UserVO;
+
+import java.util.Set;
 
 /**
  * @description AuthResponse
@@ -21,7 +24,7 @@ import lombok.NoArgsConstructor;
 @NoArgsConstructor
 @AllArgsConstructor
 @Builder
-public class AuthVO {
+public class LoginVO {
 
     /**
      * 授权令牌
@@ -38,5 +41,18 @@ public class AuthVO {
      */
     private Long expireIn;
 
-    private Object userInfo;
+    /**
+     * 用户基本信息
+     */
+    private UserVO user;
+
+    /**
+     * 菜单权限
+     */
+    private Set<String> permissionCodes;
+
+    /**
+     * 角色权限
+     */
+    private Set<String> roleCodes;
 }

+ 0 - 15
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/menu/Menu.java

@@ -49,16 +49,6 @@ public class Menu extends BaseEntity {
      */
     private String code;
 
-    /**
-     * 分类
-     */
-    private String category;
-
-    /**
-     * 模块
-     */
-    private String module;
-
     /**
      * 菜单类型
      */
@@ -89,11 +79,6 @@ public class Menu extends BaseEntity {
      */
     private String visible;
 
-    /**
-     * 显示布局
-     */
-    private String displayLayout;
-
     /**
      * 缓存
      */

+ 0 - 16
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/menu/pojo/MenuBO.java

@@ -47,16 +47,6 @@ public class MenuBO extends BaseBO {
      */
     private String code;
 
-    /**
-     * 分类
-     */
-    private String category;
-
-    /**
-     * 模块
-     */
-    private String module;
-
     /**
      * 菜单类型
      */
@@ -66,7 +56,6 @@ public class MenuBO extends BaseBO {
     /**
      * 路径
      */
-    @NotBlank(message = "path不能为空")
     private String path;
 
     /**
@@ -89,11 +78,6 @@ public class MenuBO extends BaseBO {
      */
     private String visible;
 
-    /**
-     * 显示布局
-     */
-    private String displayLayout;
-
     /**
      * 缓存
      */

+ 0 - 15
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/domain/menu/pojo/MenuVO.java

@@ -50,16 +50,6 @@ public class MenuVO extends BaseEntity {
      */
     private String code;
 
-    /**
-     * 分类
-     */
-    private String category;
-
-    /**
-     * 模块
-     */
-    private String module;
-
     /**
      * 菜单类型
      */
@@ -90,11 +80,6 @@ public class MenuVO extends BaseEntity {
      */
     private String visible;
 
-    /**
-     * 显示布局
-     */
-    private String displayLayout;
-
     /**
      * 缓存
      */

+ 2 - 2
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/AuthService.java

@@ -7,7 +7,7 @@ package org.eco.vip.auth.service.auth;
 
 
 import org.eco.vip.auth.domain.auth.pojo.AuthQuery;
-import org.eco.vip.auth.domain.auth.pojo.AuthVO;
+import org.eco.vip.auth.domain.auth.pojo.LoginVO;
 import org.eco.vip.auth.domain.client.pojo.ClientVO;
 import org.springframework.stereotype.Service;
 
@@ -20,7 +20,7 @@ import org.springframework.stereotype.Service;
 @Service
 public class AuthService implements IAuthService {
     @Override
-    public AuthVO login(AuthQuery authQuery, ClientVO clientVO, String grantType) {
+    public LoginVO login(AuthQuery authQuery, ClientVO clientVO, String grantType) {
         return IAuthStrategy.login(authQuery, clientVO, grantType);
     }
 }

+ 2 - 2
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/IAuthService.java

@@ -8,7 +8,7 @@ package org.eco.vip.auth.service.auth;
 
 import jakarta.validation.Valid;
 import org.eco.vip.auth.domain.auth.pojo.AuthQuery;
-import org.eco.vip.auth.domain.auth.pojo.AuthVO;
+import org.eco.vip.auth.domain.auth.pojo.LoginVO;
 import org.eco.vip.auth.domain.client.pojo.ClientVO;
 
 /**
@@ -19,5 +19,5 @@ import org.eco.vip.auth.domain.client.pojo.ClientVO;
  */
 public interface IAuthService {
 
-    AuthVO login(@Valid AuthQuery authQuery, ClientVO clientVO, String grantType);
+    LoginVO login(@Valid AuthQuery authQuery, ClientVO clientVO, String grantType);
 }

+ 3 - 3
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/IAuthStrategy.java

@@ -7,7 +7,7 @@ package org.eco.vip.auth.service.auth;
 
 
 import org.eco.vip.auth.domain.auth.pojo.AuthQuery;
-import org.eco.vip.auth.domain.auth.pojo.AuthVO;
+import org.eco.vip.auth.domain.auth.pojo.LoginVO;
 import org.eco.vip.auth.domain.client.pojo.ClientVO;
 import org.eco.vip.orm.exception.BusinessException;
 import org.eco.vip.orm.utils.SpringUtils;
@@ -28,7 +28,7 @@ public interface IAuthStrategy {
      * @param grantType 授权类型
      * @return 登录验证信息
      */
-    static AuthVO login(AuthQuery authQuery, ClientVO clientVO, String grantType) {
+    static LoginVO login(AuthQuery authQuery, ClientVO clientVO, String grantType) {
         // 授权类型和客户端id
         String beanName = grantType + BASE_NAME;
         if (!SpringUtils.containsBean(beanName)) {
@@ -44,5 +44,5 @@ public interface IAuthStrategy {
      * @param authQuery   登录对象
      * @return 登录验证信息
      */
-    AuthVO login(AuthQuery authQuery, ClientVO clientVO);
+    LoginVO login(AuthQuery authQuery, ClientVO clientVO);
 }

+ 13 - 13
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/LoginService.java

@@ -12,7 +12,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.eco.vip.auth.domain.user.pojo.UserVO;
 import org.eco.vip.auth.service.permission.IPermissionService;
 import org.eco.vip.orm.exception.BusinessException;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.springframework.stereotype.Service;
 
 import java.util.function.Supplier;
@@ -32,18 +32,18 @@ public class LoginService {
     @Resource
     private IPermissionService permissionService;
 
-    public LoginUser buildLoginUser(UserVO user) {
-        LoginUser loginUser = new LoginUser();
-        loginUser.setTenantId(user.getTenantId());
-        loginUser.setUserId(user.getUserId());
-        loginUser.setOrgId(user.getOrgId());
-        loginUser.setUserName(user.getUserName());
-        loginUser.setNickname(user.getNickName());
-        loginUser.setUserType(user.getUserType());
-        loginUser.setAccount(user.getAccount());
-        loginUser.setPermissionCodes(permissionService.getPermissionCodes(user.getUserId()));
-        loginUser.setRoleCodes(permissionService.getRoleCodes(user.getUserId()));
-        return loginUser;
+    public LoginUserStorage buildLoginUser(UserVO user) {
+        LoginUserStorage loginUserStorage = new LoginUserStorage();
+        loginUserStorage.setTenantId(user.getTenantId());
+        loginUserStorage.setUserId(user.getUserId());
+        loginUserStorage.setOrgId(user.getOrgId());
+        loginUserStorage.setUserName(user.getUserName());
+        loginUserStorage.setNickname(user.getNickName());
+        loginUserStorage.setUserType(user.getUserType());
+        loginUserStorage.setAccount(user.getAccount());
+        loginUserStorage.setPermissionCodes(permissionService.getPermissionCodes(user.getUserId()));
+        loginUserStorage.setRoleCodes(permissionService.getRoleCodes(user.getUserId()));
+        return loginUserStorage;
     }
 
     public void checkLogin(Supplier<Boolean> supplier) {

+ 11 - 11
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/auth/PasswordAuthStrategy.java

@@ -13,13 +13,13 @@ import jakarta.annotation.Resource;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.eco.vip.auth.domain.auth.pojo.AuthQuery;
-import org.eco.vip.auth.domain.auth.pojo.AuthVO;
+import org.eco.vip.auth.domain.auth.pojo.LoginVO;
 import org.eco.vip.auth.domain.client.pojo.ClientVO;
 import org.eco.vip.auth.domain.user.pojo.UserVO;
 import org.eco.vip.auth.service.user.IUserService;
 import org.eco.vip.orm.enums.UserStatus;
 import org.eco.vip.orm.exception.BusinessException;
-import org.eco.vip.orm.pojo.LoginUser;
+import org.eco.vip.orm.pojo.LoginUserStorage;
 import org.eco.vip.orm.utils.ObjUtils;
 import org.eco.vip.orm.utils.StrUtils;
 import org.eco.vip.security.utils.LoginHelper;
@@ -43,24 +43,24 @@ public class PasswordAuthStrategy implements IAuthStrategy {
     IUserService userService;
 
     @Override
-    public AuthVO login(AuthQuery authQuery, ClientVO clientVO) {
+    public LoginVO login(AuthQuery authQuery, ClientVO clientVO) {
         String tenantId = authQuery.getTenantId();
         String account = authQuery.getAccount();
         String password = authQuery.getPassword();
-        // 不做验证码校验
-        // String code = authQuery.getCode();
 
         UserVO userVO = buildUserVO(tenantId, account);
         loginService.checkLogin(() -> !BCrypt.checkpw(password, userVO.getPassword()));
-        LoginUser loginUser = loginService.buildLoginUser(userVO);
-        loginUser.setClientKey(clientVO.getClientKey());
-        loginUser.setDeviceType(clientVO.getDeviceType());
+        LoginUserStorage storage = loginService.buildLoginUser(userVO);
+        storage.setClientKey(clientVO.getClientKey());
+        storage.setDeviceType(clientVO.getDeviceType());
         SaLoginParameter loginParameter = createLoginModel(clientVO);
-        LoginHelper.login(loginUser, loginParameter);
-        return AuthVO.builder()
+        LoginHelper.login(storage, loginParameter);
+        return LoginVO.builder()
                 .accessToken(StpUtil.getTokenValue())
                 .expireIn(StpUtil.getTokenTimeout())
-                .userInfo(loginUser).build();
+                .roleCodes(storage.getRoleCodes())
+                .permissionCodes(storage.getPermissionCodes())
+                .user(userVO).build();
     }
 
     private static SaLoginParameter createLoginModel(ClientVO clientVO) {

+ 0 - 2
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/menu/MenuService.java

@@ -53,9 +53,7 @@ public class MenuService extends BaseService<MenuMapper, Menu> implements IMenuS
         return super.buildBaseQueryWrapper()
                 .and(MENU.CODE.eq(menuBO.getCode()))
                 .and(MENU.TITLE.eq(menuBO.getTitle()))
-                .and(MENU.MODULE.eq(menuBO.getModule()))
                 .and(MENU.PATH.eq(menuBO.getPath()))
-                .and(MENU.CATEGORY.eq(menuBO.getCategory()))
                 .and(MENU.NAME.eq(menuBO.getName()))
                 .and(MENU.STATUS.eq(menuBO.getStatus()))
                 .and(MENU.PARENT_ID.eq(menuBO.getParentId()));

+ 7 - 7
eco-nexus-core/auth-biz/src/main/java/org/eco/vip/auth/service/role/RoleService.java

@@ -94,10 +94,10 @@ public class RoleService extends BaseService<RoleMapper, Role> implements IRoleS
         QueryWrapper queryWrapper = QueryWrapper.create()
                 .select(QueryMethods.distinct(PERMISSION.CODE))
                 .from(USER.as("ut"))
-                .leftJoin(USER_ROLE.as("urt")).on(USER.USER_ID.eq(USER_ROLE.USER_ID))
-                .leftJoin(ROLE.as("rt")).on(USER_ROLE.ROLE_ID.eq(ROLE.ROLE_ID))
-                .leftJoin(ROLE_PERM.as("rpt")).on(USER_ROLE.ROLE_ID.eq(ROLE_PERM.ROLE_ID))
-                .leftJoin(PERMISSION.as("pt")).on(ROLE_PERM.PERM_ID.eq(PERMISSION.ID))
+                .join(USER_ROLE.as("urt")).on(USER.USER_ID.eq(USER_ROLE.USER_ID))
+                .join(ROLE.as("rt")).on(USER_ROLE.ROLE_ID.eq(ROLE.ROLE_ID))
+                .join(ROLE_PERM.as("rpt")).on(USER_ROLE.ROLE_ID.eq(ROLE_PERM.ROLE_ID))
+                .join(PERMISSION.as("pt")).on(ROLE_PERM.PERM_ID.eq(PERMISSION.ID))
                 .where(USER.USER_ID.eq(userId));
         return this.listAs(queryWrapper, String.class);
     }
@@ -107,9 +107,9 @@ public class RoleService extends BaseService<RoleMapper, Role> implements IRoleS
         QueryWrapper queryWrapper = QueryWrapper.create()
                 .select(QueryMethods.distinct(ROLE.CODE))
                 .from(ROLE.as("rt"))
-                .leftJoin(USER_ROLE.as("urt")).on(USER_ROLE.ROLE_ID.eq(ROLE.ROLE_ID))
-                .leftJoin(USER.as("ut")).on(USER.USER_ID.eq(USER_ROLE.USER_ID))
-                .leftJoin(ORG.as("ot")).on(ORG.ORG_ID.eq(USER.ORG_ID))
+                .join(USER_ROLE.as("urt")).on(USER_ROLE.ROLE_ID.eq(ROLE.ROLE_ID))
+                .join(USER.as("ut")).on(USER.USER_ID.eq(USER_ROLE.USER_ID))
+                .join(ORG.as("ot")).on(ORG.ORG_ID.eq(USER.ORG_ID))
                 .where(USER.USER_ID.eq(userId));
         return this.listAs(queryWrapper, String.class);
     }

+ 0 - 3
eco-start/src/main/resources/db/mysql/V1_0_0_1__sys-init-ddl.sql

@@ -61,15 +61,12 @@ CREATE TABLE `system_menu_t`
     `title`          varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题',
     `name`           varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '别名',
     `code`           varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '编码',
-    `category`       varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '分类',
-    `module`         varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '模块',
     `menu_type`      varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '菜单类型',
     `path`           varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '路径',
     `component`      varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '组件',
     `icon`           varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '图标',
     `color`          varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '颜色',
     `visible`        varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '是否可见',
-    `display_layout` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '显示布局',
     `keep_live`      varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '页签缓存',
     `order_num`      int NULL DEFAULT NULL COMMENT '显示顺序',
     `tenant_id`      varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '租户编号',