Prechádzať zdrojové kódy

fix 修复 个人中心数据被脱敏问题

疯狂的狮子Li 11 mesiacov pred
rodič
commit
48213bc9c9

+ 5 - 2
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java

@@ -17,6 +17,7 @@ import org.dromara.common.web.core.BaseController;
 import org.dromara.system.domain.bo.SysUserBo;
 import org.dromara.system.domain.bo.SysUserPasswordBo;
 import org.dromara.system.domain.bo.SysUserProfileBo;
+import org.dromara.system.domain.vo.ProfileUserVo;
 import org.dromara.system.domain.vo.SysOssVo;
 import org.dromara.system.domain.vo.SysUserVo;
 import org.dromara.system.service.ISysOssService;
@@ -50,7 +51,9 @@ public class SysProfileController extends BaseController {
         SysUserVo user = userService.selectUserById(LoginHelper.getUserId());
         String roleGroup = userService.selectUserRoleGroup(user.getUserId());
         String postGroup = userService.selectUserPostGroup(user.getUserId());
-        ProfileVo profileVo = new ProfileVo(user, roleGroup, postGroup);
+        // 单独做一个vo专门给个人中心用 避免数据被脱敏
+        ProfileUserVo profileUser = BeanUtil.toBean(user, ProfileUserVo.class);
+        ProfileVo profileVo = new ProfileVo(profileUser, roleGroup, postGroup);
         return R.ok(profileVo);
     }
 
@@ -128,6 +131,6 @@ public class SysProfileController extends BaseController {
 
     public record AvatarVo(String imgUrl) {}
 
-    public record ProfileVo(SysUserVo user, String roleGroup, String postGroup) {}
+    public record ProfileVo(ProfileUserVo user, String roleGroup, String postGroup) {}
 
 }

+ 90 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/ProfileUserVo.java

@@ -0,0 +1,90 @@
+package org.dromara.system.domain.vo;
+
+import lombok.Data;
+import org.dromara.common.translation.annotation.Translation;
+import org.dromara.common.translation.constant.TransConstant;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+ * 用户信息视图对象 sys_user
+ *
+ * @author Lion Li
+ */
+@Data
+public class ProfileUserVo implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 用户ID
+     */
+    private Long userId;
+
+    /**
+     * 租户ID
+     */
+    private String tenantId;
+
+    /**
+     * 部门ID
+     */
+    private Long deptId;
+
+    /**
+     * 用户账号
+     */
+    private String userName;
+
+    /**
+     * 用户昵称
+     */
+    private String nickName;
+
+    /**
+     * 用户类型(sys_user系统用户)
+     */
+    private String userType;
+
+    /**
+     * 用户邮箱
+     */
+    private String email;
+
+    /**
+     * 手机号码
+     */
+    private String phonenumber;
+
+    /**
+     * 用户性别(0男 1女 2未知)
+     */
+    private String sex;
+
+    /**
+     * 头像地址
+     */
+    @Translation(type = TransConstant.OSS_ID_TO_URL)
+    private Long avatar;
+
+    /**
+     * 最后登录IP
+     */
+    private String loginIp;
+
+    /**
+     * 最后登录时间
+     */
+    private Date loginDate;
+
+    /**
+     * 部门名
+     */
+    @Translation(type = TransConstant.DEPT_ID_TO_NAME, mapper = "deptId")
+    private String deptName;
+
+}