init
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
package com.ruoyi.system.service;
|
||||
|
||||
import com.ruoyi.component.log.event.LogininforEvent;
|
||||
import com.ruoyi.component.mybatis.core.page.PageQuery;
|
||||
import com.ruoyi.component.mybatis.core.page.TableDataInfo;
|
||||
import com.ruoyi.system.domain.SysLogininfor;
|
||||
import org.springframework.context.event.EventListener;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -14,6 +16,9 @@ import java.util.List;
|
||||
public interface ISysLogininforService {
|
||||
|
||||
|
||||
@EventListener
|
||||
void recordLogininfor(LogininforEvent logininforEvent);
|
||||
|
||||
TableDataInfo<SysLogininfor> selectPageLogininforList(SysLogininfor logininfor, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.ruoyi.component.core.constant.CacheConstants;
|
||||
import com.ruoyi.component.core.constant.Constants;
|
||||
import com.ruoyi.component.core.constant.GlobalConstants;
|
||||
import com.ruoyi.component.core.domain.dto.RoleDTO;
|
||||
import com.ruoyi.component.core.executor.ExecutorConstant;
|
||||
import com.ruoyi.component.log.event.LogininforEvent;
|
||||
import com.ruoyi.component.redis.util.RedisUtils;
|
||||
import com.ruoyi.component.tenant.core.TenantEntity;
|
||||
@@ -33,6 +34,7 @@ import com.ruoyi.component.core.util.spring.SpringUtils;
|
||||
import com.ruoyi.system.mapper.SysUserMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -157,6 +159,9 @@ public class SysLoginService {
|
||||
}
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private ISysLogininforService sysLogininforService;
|
||||
|
||||
/**
|
||||
* 记录登录信息
|
||||
*
|
||||
@@ -171,7 +176,9 @@ public class SysLoginService {
|
||||
logininforEvent.setStatus(status);
|
||||
logininforEvent.setMessage(message);
|
||||
logininforEvent.setRequest(ServletUtils.getRequest());
|
||||
SpringUtils.context().publishEvent(logininforEvent);
|
||||
ExecutorConstant.COMMON_EXECUTOR.execute(() -> {
|
||||
sysLogininforService.recordLogininfor(logininforEvent);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,6 +4,7 @@ import cn.dev33.satoken.secure.BCrypt;
|
||||
import com.ruoyi.component.core.constant.CacheConstants;
|
||||
import com.ruoyi.component.core.constant.Constants;
|
||||
import com.ruoyi.component.core.constant.GlobalConstants;
|
||||
import com.ruoyi.component.core.executor.ExecutorConstant;
|
||||
import com.ruoyi.component.log.event.LogininforEvent;
|
||||
import com.ruoyi.component.redis.util.RedisUtils;
|
||||
import com.ruoyi.system.domain.SysUser;
|
||||
@@ -30,6 +31,7 @@ public class SysRegisterService {
|
||||
|
||||
private final ISysUserService userService;
|
||||
private final ISysConfigService configService;
|
||||
private final ISysLogininforService sysLogininforService;
|
||||
|
||||
/**
|
||||
* 注册
|
||||
@@ -96,7 +98,9 @@ public class SysRegisterService {
|
||||
logininforEvent.setStatus(status);
|
||||
logininforEvent.setMessage(message);
|
||||
logininforEvent.setRequest(ServletUtils.getRequest());
|
||||
SpringUtils.context().publishEvent(logininforEvent);
|
||||
ExecutorConstant.COMMON_EXECUTOR.execute(() -> {
|
||||
sysLogininforService.recordLogininfor(logininforEvent);
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -204,7 +204,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
|
||||
*/
|
||||
@Override
|
||||
public void checkDeptDataScope(Long deptId) {
|
||||
if (!LoginHelper.isAdmin()) {
|
||||
if (!LoginHelper.isSuperAdmin()) {
|
||||
SysDept dept = new SysDept();
|
||||
dept.setDeptId(deptId);
|
||||
List<SysDept> depts = this.selectDeptList(dept);
|
||||
|
||||
@@ -17,7 +17,6 @@ import com.ruoyi.system.service.ISysLogininforService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.context.event.EventListener;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
@@ -43,8 +42,8 @@ public class SysLogininforServiceImpl implements ISysLogininforService {
|
||||
*
|
||||
* @param logininforEvent 登录事件
|
||||
*/
|
||||
@Async
|
||||
@EventListener
|
||||
@Override
|
||||
public void recordLogininfor(LogininforEvent logininforEvent) {
|
||||
HttpServletRequest request = logininforEvent.getRequest();
|
||||
final UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent"));
|
||||
|
||||
@@ -64,7 +64,7 @@ public class SysMenuServiceImpl implements ISysMenuService {
|
||||
public List<SysMenu> selectMenuList(SysMenu menu, Long userId) {
|
||||
List<SysMenu> menuList = null;
|
||||
// 管理员显示所有菜单信息
|
||||
if (LoginHelper.isAdmin(userId)) {
|
||||
if (LoginHelper.isSuperAdmin(userId)) {
|
||||
menuList = baseMapper.selectList(new LambdaQueryWrapper<SysMenu>()
|
||||
.like(StringUtils.isNotBlank(menu.getMenuName()), SysMenu::getMenuName, menu.getMenuName())
|
||||
.eq(StringUtils.isNotBlank(menu.getVisible()), SysMenu::getVisible, menu.getVisible())
|
||||
@@ -129,7 +129,7 @@ public class SysMenuServiceImpl implements ISysMenuService {
|
||||
@Override
|
||||
public List<SysMenu> selectMenuTreeByUserId(Long userId) {
|
||||
List<SysMenu> menus = null;
|
||||
if (LoginHelper.isAdmin(userId)) {
|
||||
if (LoginHelper.isSuperAdmin(userId)) {
|
||||
menus = baseMapper.selectMenuTreeAll();
|
||||
} else {
|
||||
menus = baseMapper.selectMenuTreeByUserId(userId);
|
||||
|
||||
@@ -214,7 +214,7 @@ public class SysRoleServiceImpl implements ISysRoleService {
|
||||
*/
|
||||
@Override
|
||||
public void checkRoleDataScope(Long roleId) {
|
||||
if (!LoginHelper.isAdmin()) {
|
||||
if (!LoginHelper.isSuperAdmin()) {
|
||||
SysRole role = new SysRole();
|
||||
role.setRoleId(roleId);
|
||||
List<SysRole> roles = this.selectRoleList(role);
|
||||
|
||||
@@ -27,7 +27,7 @@ public class SysSensitiveServiceImpl implements SensitiveService {
|
||||
*/
|
||||
@Override
|
||||
public boolean isSensitive() {
|
||||
if(LoginHelper.isAdmin()){
|
||||
if(LoginHelper.isSuperAdmin()){
|
||||
return false;
|
||||
}
|
||||
return SENSITIVE;
|
||||
|
||||
@@ -251,7 +251,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
|
||||
*/
|
||||
@Override
|
||||
public void checkUserDataScope(Long userId) {
|
||||
if (!LoginHelper.isAdmin()) {
|
||||
if (!LoginHelper.isSuperAdmin()) {
|
||||
SysUser user = new SysUser();
|
||||
user.setUserId(userId);
|
||||
List<SysUser> users = this.selectUserList(user);
|
||||
|
||||
Reference in New Issue
Block a user