ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -7,11 +7,10 @@ import com.ruoyi.common.core.domain.entity.SysMenu; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginBody; import com.ruoyi.common.core.service.UserService; import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.system.domain.vo.RouterVo; import com.ruoyi.system.service.ISysMenuService; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.SysLoginService; import com.ruoyi.system.service.SysPermissionService; import io.swagger.annotations.Api; @@ -41,6 +40,7 @@ private final SysLoginService loginService; private final ISysMenuService menuService; private final ISysUserService userService; private final SysPermissionService permissionService; /** @@ -78,7 +78,7 @@ @ApiOperation("è·åç¨æ·ä¿¡æ¯") @GetMapping("getInfo") public AjaxResult<Map<String, Object>> getInfo() { SysUser user = SpringUtils.getBean(UserService.class).selectUserById(LoginHelper.getUserId()); SysUser user = userService.selectUserById(LoginHelper.getUserId()); // è§è²éå Set<String> roles = permissionService.getRolePermission(user); // æééå ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
@@ -5,12 +5,10 @@ import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.service.UserService; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.system.domain.SysOss; import com.ruoyi.system.service.ISysOssService; import com.ruoyi.system.service.ISysUserService; @@ -91,7 +89,7 @@ @Log(title = "个人信æ¯", businessType = BusinessType.UPDATE) @PutMapping("/updatePwd") public AjaxResult<Void> updatePwd(String oldPassword, String newPassword) { SysUser user = SpringUtils.getBean(UserService.class).selectUserById(LoginHelper.getUserId()); SysUser user = userService.selectUserById(LoginHelper.getUserId()); String userName = user.getUserName(); String password = user.getPassword(); if (!SecurityUtils.matchesPassword(oldPassword, password)) { ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java
@@ -1,10 +1,13 @@ package com.ruoyi.common.core.domain.model; import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.helper.LoginHelper; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; import java.util.List; import java.util.Set; /** @@ -85,6 +88,21 @@ private String username; /** * é¨é¨å¯¹è±¡ */ private SysDept dept; /** * è§è²å¯¹è±¡ */ private List<SysRole> roles; /** * æ°æ®æé å½åè§è²ID */ private Long roleId; /** * è·åç»å½id */ public String getLoginId() { ruoyi-common/src/main/java/com/ruoyi/common/core/service/UserService.java
ÎļþÒÑɾ³ý ruoyi-framework/src/main/java/com/ruoyi/framework/handler/PlusDataPermissionHandler.java
@@ -8,12 +8,12 @@ import com.ruoyi.common.annotation.DataColumn; import com.ruoyi.common.annotation.DataPermission; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.service.UserService; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.enums.DataScopeType; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.helper.DataPermissionHelper; import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.spring.SpringUtils; import lombok.extern.slf4j.Slf4j; @@ -74,13 +74,13 @@ inavlidCacheSet.add(mappedStatementId); return where; } SysUser currentUser = DataPermissionHelper.getVariable("user"); LoginUser currentUser = DataPermissionHelper.getVariable("user"); if (ObjectUtil.isNull(currentUser)) { currentUser = SpringUtils.getBean(UserService.class).selectUserById(LoginHelper.getUserId()); currentUser = LoginHelper.getLoginUser(); DataPermissionHelper.setVariable("user", currentUser); } // 妿æ¯è¶ 级管çåï¼åä¸è¿æ»¤æ°æ® if (ObjectUtil.isNull(currentUser) || currentUser.isAdmin()) { if (ObjectUtil.isNull(currentUser) || SecurityUtils.isAdmin(currentUser.getUserId())) { return where; } String dataFilterSql = buildDataFilter(dataColumns, isSelect); @@ -108,7 +108,7 @@ StringBuilder sqlString = new StringBuilder(); // æ´æ°æå é¤éæ»¡è¶³æææ¡ä»¶ String joinStr = isSelect ? " OR " : " AND "; SysUser user = DataPermissionHelper.getVariable("user"); LoginUser user = DataPermissionHelper.getVariable("user"); StandardEvaluationContext context = new StandardEvaluationContext(); context.setBeanResolver(beanResolver); DataPermissionHelper.getContext().forEach(context::setVariable); ruoyi-framework/src/main/java/com/ruoyi/framework/listener/UserActionListener.java
@@ -9,14 +9,12 @@ import cn.hutool.http.useragent.UserAgentUtil; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.dto.UserOnlineDTO; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.service.UserService; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.enums.UserType; import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.ServletUtils; import com.ruoyi.common.utils.ip.AddressUtils; import com.ruoyi.common.utils.redis.RedisUtils; import com.ruoyi.common.utils.spring.SpringUtils; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; @@ -44,7 +42,7 @@ if (userType == UserType.SYS_USER) { UserAgent userAgent = UserAgentUtil.parse(ServletUtils.getRequest().getHeader("User-Agent")); String ip = ServletUtils.getClientIP(); SysUser user = SpringUtils.getBean(UserService.class).selectUserById(LoginHelper.getUserId()); LoginUser user = LoginHelper.getLoginUser(); String tokenValue = StpUtil.getTokenValue(); UserOnlineDTO dto = UserOnlineDTO.builder() .ipaddr(ip) @@ -53,7 +51,7 @@ .os(userAgent.getOs().getName()) .loginTime(System.currentTimeMillis()) .tokenId(tokenValue) .userName(user.getUserName()) .userName(user.getUsername()) .build(); if (ObjectUtil.isNotNull(user.getDept())) { dto.setDeptName(user.getDept().getDeptName()); ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
@@ -3,7 +3,6 @@ import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.service.UserService; import java.util.List; @@ -12,7 +11,7 @@ * * @author Lion Li */ public interface ISysUserService extends UserService { public interface ISysUserService { TableDataInfo<SysUser> selectPageUserList(SysUser user, PageQuery pageQuery); @@ -47,7 +46,6 @@ * @param userName ç¨æ·å * @return ç¨æ·å¯¹è±¡ä¿¡æ¯ */ @Override SysUser selectUserByUserName(String userName); /** @@ -56,7 +54,6 @@ * @param userId ç¨æ·ID * @return ç¨æ·å¯¹è±¡ä¿¡æ¯ */ @Override SysUser selectUserById(Long userId); /** ruoyi-system/src/main/java/com/ruoyi/system/service/SysLoginService.java
@@ -137,6 +137,8 @@ loginUser.setUserType(user.getUserType()); loginUser.setMenuPermission(permissionService.getMenuPermission(user)); loginUser.setRolePermission(permissionService.getRolePermission(user)); loginUser.setRoles(user.getRoles()); loginUser.setDept(user.getDept()); return loginUser; } ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -10,7 +10,6 @@ import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.service.UserService; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.StringUtils; @@ -38,7 +37,7 @@ @Slf4j @RequiredArgsConstructor @Service public class SysUserServiceImpl implements ISysUserService, UserService { public class SysUserServiceImpl implements ISysUserService { private final SysUserMapper baseMapper; private final SysRoleMapper roleMapper;