diff --git a/pom.xml b/pom.xml
index e93dc07..2d3139a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -170,6 +170,13 @@
4.40.0.ALL
+
+
+ cn.dev33
+ sa-token-spring-boot3-starter
+ 1.44.0
+
+
diff --git a/src/main/java/cn/xf/basedemo/common/utils/ApplicationContextUtils.java b/src/main/java/cn/xf/basedemo/common/utils/ApplicationContextUtils.java
index ec79a21..4a7801c 100644
--- a/src/main/java/cn/xf/basedemo/common/utils/ApplicationContextUtils.java
+++ b/src/main/java/cn/xf/basedemo/common/utils/ApplicationContextUtils.java
@@ -23,7 +23,7 @@ public class ApplicationContextUtils implements ApplicationContextAware {
ApplicationContextUtils.context = applicationContext;
}
- public static ApplicationContext geteContext(){
+ public static ApplicationContext getContext(){
return context;
}
diff --git a/src/main/java/cn/xf/basedemo/interceptor/StpInterfaceImpl.java b/src/main/java/cn/xf/basedemo/interceptor/StpInterfaceImpl.java
new file mode 100644
index 0000000..c09cdfc
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/interceptor/StpInterfaceImpl.java
@@ -0,0 +1,37 @@
+package cn.xf.basedemo.interceptor;
+
+import cn.dev33.satoken.stp.StpInterface;
+import cn.xf.basedemo.common.utils.ApplicationContextUtils;
+import cn.xf.basedemo.mappers.SysPermissionMapper;
+import cn.xf.basedemo.mappers.SysRoleMapper;
+import cn.xf.basedemo.model.domain.SysRole;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @Description: 权限加载组件类
+ * @ClassName: StpInterfaceImpl
+ * @Author: xiongfeng
+ * @Date: 2025/8/18 22:51
+ * @Version: 1.0
+ */
+@Component
+public class StpInterfaceImpl implements StpInterface {
+
+ private SysPermissionMapper sysPermissionMapper= (SysPermissionMapper) ApplicationContextUtils.getBean("SysPermissionMapper");
+ private SysRoleMapper sysRoleMapper= (SysRoleMapper) ApplicationContextUtils.getBean("SysRoleMapper");
+
+ @Override
+ public List getPermissionList(Object userId, String s) {
+ //获取登录用户权限数据
+ return sysPermissionMapper.getPermissionListByRoleId((Long) userId);
+ }
+
+ @Override
+ public List getRoleList(Object userId, String s) {
+ //获取用户角色数据
+ return sysRoleMapper.getRoleListByUserId((Long) userId);
+ }
+}
diff --git a/src/main/java/cn/xf/basedemo/mappers/SysMenuMapper.java b/src/main/java/cn/xf/basedemo/mappers/SysMenuMapper.java
new file mode 100644
index 0000000..89d8439
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/mappers/SysMenuMapper.java
@@ -0,0 +1,15 @@
+package cn.xf.basedemo.mappers;
+
+import cn.xf.basedemo.model.domain.SysMenu;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_menu(系统菜单表 sys_menu)】的数据库操作Mapper
+* @createDate 2025-08-19 21:22:03
+* @Entity cn.xf.basedemo.model.domain.SysMenu
+*/
+public interface SysMenuMapper extends BaseMapper {
+
+
+}
diff --git a/src/main/java/cn/xf/basedemo/mappers/SysPermissionMapper.java b/src/main/java/cn/xf/basedemo/mappers/SysPermissionMapper.java
new file mode 100644
index 0000000..d8a2078
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/mappers/SysPermissionMapper.java
@@ -0,0 +1,18 @@
+package cn.xf.basedemo.mappers;
+
+import cn.xf.basedemo.model.domain.SysPermission;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_permission(系统权限表 sys_permission)】的数据库操作Mapper
+* @createDate 2025-08-19 21:22:03
+* @Entity cn.xf.basedemo.model.domain.SysPermission
+*/
+public interface SysPermissionMapper extends BaseMapper {
+
+ List getPermissionListByRoleId(Long useId);
+
+}
diff --git a/src/main/java/cn/xf/basedemo/mappers/SysRoleMapper.java b/src/main/java/cn/xf/basedemo/mappers/SysRoleMapper.java
new file mode 100644
index 0000000..9eee13e
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/mappers/SysRoleMapper.java
@@ -0,0 +1,19 @@
+package cn.xf.basedemo.mappers;
+
+import cn.xf.basedemo.model.domain.SysRole;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role(系统角色表 sys_role)】的数据库操作Mapper
+* @createDate 2025-08-19 21:22:03
+* @Entity cn.xf.basedemo.model.domain.SysRole
+*/
+public interface SysRoleMapper extends BaseMapper {
+
+ List getRoleListByUserId(Long userId);
+
+
+}
diff --git a/src/main/java/cn/xf/basedemo/mappers/SysRoleMenuMapper.java b/src/main/java/cn/xf/basedemo/mappers/SysRoleMenuMapper.java
new file mode 100644
index 0000000..0dc8ef3
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/mappers/SysRoleMenuMapper.java
@@ -0,0 +1,15 @@
+package cn.xf.basedemo.mappers;
+
+import cn.xf.basedemo.model.domain.SysRoleMenu;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role_menu(角色菜单关联表 sys_role_menu)】的数据库操作Mapper
+* @createDate 2025-08-19 21:22:03
+* @Entity cn.xf.basedemo.model.domain.SysRoleMenu
+*/
+public interface SysRoleMenuMapper extends BaseMapper {
+
+
+}
diff --git a/src/main/java/cn/xf/basedemo/mappers/SysRolePermissionMapper.java b/src/main/java/cn/xf/basedemo/mappers/SysRolePermissionMapper.java
new file mode 100644
index 0000000..c9ff916
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/mappers/SysRolePermissionMapper.java
@@ -0,0 +1,15 @@
+package cn.xf.basedemo.mappers;
+
+import cn.xf.basedemo.model.domain.SysRolePermission;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role_permission(角色权限关联表 sys_role_permission)】的数据库操作Mapper
+* @createDate 2025-08-19 21:22:03
+* @Entity cn.xf.basedemo.model.domain.SysRolePermission
+*/
+public interface SysRolePermissionMapper extends BaseMapper {
+
+
+}
diff --git a/src/main/java/cn/xf/basedemo/mappers/SysUserRoleMapper.java b/src/main/java/cn/xf/basedemo/mappers/SysUserRoleMapper.java
new file mode 100644
index 0000000..fed6270
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/mappers/SysUserRoleMapper.java
@@ -0,0 +1,15 @@
+package cn.xf.basedemo.mappers;
+
+import cn.xf.basedemo.model.domain.SysUserRole;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_user_role(用户角色关联表 sys_user_role)】的数据库操作Mapper
+* @createDate 2025-08-19 21:22:03
+* @Entity cn.xf.basedemo.model.domain.SysUserRole
+*/
+public interface SysUserRoleMapper extends BaseMapper {
+
+
+}
diff --git a/src/main/java/cn/xf/basedemo/model/domain/SysMenu.java b/src/main/java/cn/xf/basedemo/model/domain/SysMenu.java
new file mode 100644
index 0000000..dd253c3
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/model/domain/SysMenu.java
@@ -0,0 +1,67 @@
+package cn.xf.basedemo.model.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 系统菜单表 sys_menu
+ * @TableName sys_menu
+ */
+@TableName(value ="sys_menu")
+@Data
+public class SysMenu implements Serializable {
+ /**
+ * 主键ID
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 菜单名称(sys_menu.name)
+ */
+ private String name;
+
+ /**
+ * 前端路由路径(sys_menu.path)
+ */
+ private String path;
+
+ /**
+ * 父菜单ID(sys_menu.parent_id,树结构)
+ */
+ private Long parent_id;
+
+ /**
+ * 菜单类型(sys_menu.type),0=目录,1=菜单,2=按钮
+ */
+ private Integer type;
+
+ /**
+ * 菜单图标(sys_menu.icon)
+ */
+ private String icon;
+
+ /**
+ * 创建时间(sys_menu.create_time)
+ */
+ private Date create_time;
+
+ /**
+ * 创建人(sys_menu.create_by)
+ */
+ private String create_by;
+
+ /**
+ * 更新时间(sys_menu.update_time)
+ */
+ private Date update_time;
+
+ /**
+ * 更新人(sys_menu.update_by)
+ */
+ private String update_by;
+}
\ No newline at end of file
diff --git a/src/main/java/cn/xf/basedemo/model/domain/SysPermission.java b/src/main/java/cn/xf/basedemo/model/domain/SysPermission.java
new file mode 100644
index 0000000..807d396
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/model/domain/SysPermission.java
@@ -0,0 +1,57 @@
+package cn.xf.basedemo.model.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 系统权限表 sys_permission
+ * @TableName sys_permission
+ */
+@TableName(value ="sys_permission")
+@Data
+public class SysPermission implements Serializable {
+ /**
+ * 主键ID(sys_permission)
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 权限标识(sys_permission.code),如 user:add、order:delete
+ */
+ private String code;
+
+ /**
+ * 权限名称(sys_permission.name)
+ */
+ private String name;
+
+ /**
+ * 所属菜单ID(sys_permission.menu_id)
+ */
+ private Long menu_id;
+
+ /**
+ * 创建时间(sys_permission.create_time)
+ */
+ private Date create_time;
+
+ /**
+ * 创建人(sys_permission.create_by)
+ */
+ private String create_by;
+
+ /**
+ * 更新时间(sys_permission.update_time)
+ */
+ private Date update_time;
+
+ /**
+ * 更新人(sys_permission.update_by)
+ */
+ private String update_by;
+}
\ No newline at end of file
diff --git a/src/main/java/cn/xf/basedemo/model/domain/SysRole.java b/src/main/java/cn/xf/basedemo/model/domain/SysRole.java
new file mode 100644
index 0000000..5b0bf74
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/model/domain/SysRole.java
@@ -0,0 +1,58 @@
+package cn.xf.basedemo.model.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 系统角色表 sys_role
+ * @TableName sys_role
+ */
+@TableName(value ="sys_role")
+@Data
+public class SysRole implements Serializable {
+ /**
+ * 主键ID(sys_role)
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 角色名称(sys_role.name)
+ */
+ private String name;
+
+ /**
+ * 角色标识(sys_role.code),如 ADMIN、OPERATOR
+ */
+ private String code;
+
+ /**
+ * 角色状态(sys_role.status),1=启用,0=禁用
+ */
+ private Integer status;
+
+ /**
+ * 创建时间(sys_role.create_time)
+ */
+ private Date create_time;
+
+ /**
+ * 创建人(sys_role.create_by)
+ */
+ private String create_by;
+
+ /**
+ * 更新时间(sys_role.update_time)
+ */
+ private Date update_time;
+
+ /**
+ * 更新人(sys_role.update_by)
+ */
+ private String update_by;
+
+}
\ No newline at end of file
diff --git a/src/main/java/cn/xf/basedemo/model/domain/SysRoleMenu.java b/src/main/java/cn/xf/basedemo/model/domain/SysRoleMenu.java
new file mode 100644
index 0000000..9803cf1
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/model/domain/SysRoleMenu.java
@@ -0,0 +1,53 @@
+package cn.xf.basedemo.model.domain;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * 角色菜单关联表 sys_role_menu
+ * @TableName sys_role_menu
+ */
+@TableName(value ="sys_role_menu")
+@Data
+public class SysRoleMenu implements Serializable {
+ /**
+ * 主键ID
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 角色ID(sys_role_menu.role_id)
+ */
+ private Long role_id;
+
+ /**
+ * 菜单ID(sys_role_menu.menu_id)
+ */
+ private Long menu_id;
+
+ /**
+ * 创建时间(sys_role_menu.create_time)
+ */
+ private Date create_time;
+
+ /**
+ * 创建人(sys_role_menu.create_by)
+ */
+ private String create_by;
+
+ /**
+ * 更新时间(sys_role_menu.update_time)
+ */
+ private Date update_time;
+
+ /**
+ * 更新人(sys_role_menu.update_by)
+ */
+ private String update_by;
+
+}
\ No newline at end of file
diff --git a/src/main/java/cn/xf/basedemo/model/domain/SysRolePermission.java b/src/main/java/cn/xf/basedemo/model/domain/SysRolePermission.java
new file mode 100644
index 0000000..8b9138c
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/model/domain/SysRolePermission.java
@@ -0,0 +1,53 @@
+package cn.xf.basedemo.model.domain;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * 角色权限关联表 sys_role_permission
+ * @TableName sys_role_permission
+ */
+@TableName(value ="sys_role_permission")
+@Data
+public class SysRolePermission implements Serializable {
+ /**
+ * 主键ID
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 角色ID(sys_role_permission.role_id)
+ */
+ private Long role_id;
+
+ /**
+ * 权限ID(sys_role_permission.permission_id)
+ */
+ private Long permission_id;
+
+ /**
+ * 创建时间(sys_role_permission.create_time)
+ */
+ private Date create_time;
+
+ /**
+ * 创建人(sys_role_permission.create_by)
+ */
+ private String create_by;
+
+ /**
+ * 更新时间(sys_role_permission.update_time)
+ */
+ private Date update_time;
+
+ /**
+ * 更新人(sys_role_permission.update_by)
+ */
+ private String update_by;
+
+}
\ No newline at end of file
diff --git a/src/main/java/cn/xf/basedemo/model/domain/SysUserRole.java b/src/main/java/cn/xf/basedemo/model/domain/SysUserRole.java
new file mode 100644
index 0000000..306e5d0
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/model/domain/SysUserRole.java
@@ -0,0 +1,54 @@
+package cn.xf.basedemo.model.domain;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * 用户角色关联表 sys_user_role
+ * @TableName sys_user_role
+ */
+@TableName(value ="sys_user_role")
+@Data
+public class SysUserRole implements Serializable {
+ /**
+ * 主键ID
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 用户ID(sys_user_role.user_id)
+ */
+ private Long user_id;
+
+ /**
+ * 角色ID(sys_user_role.role_id)
+ */
+ private Long role_id;
+
+ /**
+ * 创建时间(sys_user_role.create_time)
+ */
+ private Date create_time;
+
+ /**
+ * 创建人(sys_user_role.create_by)
+ */
+ private String create_by;
+
+ /**
+ * 更新时间(sys_user_role.update_time)
+ */
+ private Date update_time;
+
+ /**
+ * 更新人(sys_user_role.update_by)
+ */
+ private String update_by;
+
+}
\ No newline at end of file
diff --git a/src/main/java/cn/xf/basedemo/service/SysMenuService.java b/src/main/java/cn/xf/basedemo/service/SysMenuService.java
new file mode 100644
index 0000000..49dec97
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/SysMenuService.java
@@ -0,0 +1,13 @@
+package cn.xf.basedemo.service;
+
+import cn.xf.basedemo.model.domain.SysMenu;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_menu(系统菜单表 sys_menu)】的数据库操作Service
+* @createDate 2025-08-19 21:22:03
+*/
+public interface SysMenuService extends IService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/SysPermissionService.java b/src/main/java/cn/xf/basedemo/service/SysPermissionService.java
new file mode 100644
index 0000000..20fc92a
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/SysPermissionService.java
@@ -0,0 +1,14 @@
+package cn.xf.basedemo.service;
+
+import cn.xf.basedemo.model.domain.SysPermission;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_permission(系统权限表 sys_permission)】的数据库操作Service
+* @createDate 2025-08-19 21:22:03
+*/
+public interface SysPermissionService extends IService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/SysRoleMenuService.java b/src/main/java/cn/xf/basedemo/service/SysRoleMenuService.java
new file mode 100644
index 0000000..1775c5d
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/SysRoleMenuService.java
@@ -0,0 +1,13 @@
+package cn.xf.basedemo.service;
+
+import cn.xf.basedemo.model.domain.SysRoleMenu;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role_menu(角色菜单关联表 sys_role_menu)】的数据库操作Service
+* @createDate 2025-08-19 21:22:03
+*/
+public interface SysRoleMenuService extends IService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/SysRolePermissionService.java b/src/main/java/cn/xf/basedemo/service/SysRolePermissionService.java
new file mode 100644
index 0000000..dd60a78
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/SysRolePermissionService.java
@@ -0,0 +1,13 @@
+package cn.xf.basedemo.service;
+
+import cn.xf.basedemo.model.domain.SysRolePermission;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role_permission(角色权限关联表 sys_role_permission)】的数据库操作Service
+* @createDate 2025-08-19 21:22:03
+*/
+public interface SysRolePermissionService extends IService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/SysRoleService.java b/src/main/java/cn/xf/basedemo/service/SysRoleService.java
new file mode 100644
index 0000000..a1eefae
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/SysRoleService.java
@@ -0,0 +1,13 @@
+package cn.xf.basedemo.service;
+
+import cn.xf.basedemo.model.domain.SysRole;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role(系统角色表 sys_role)】的数据库操作Service
+* @createDate 2025-08-19 21:22:03
+*/
+public interface SysRoleService extends IService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/SysUserRoleService.java b/src/main/java/cn/xf/basedemo/service/SysUserRoleService.java
new file mode 100644
index 0000000..d8428c4
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/SysUserRoleService.java
@@ -0,0 +1,13 @@
+package cn.xf.basedemo.service;
+
+import cn.xf.basedemo.model.domain.SysUserRole;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_user_role(用户角色关联表 sys_user_role)】的数据库操作Service
+* @createDate 2025-08-19 21:22:03
+*/
+public interface SysUserRoleService extends IService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/SysMenuServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/SysMenuServiceImpl.java
new file mode 100644
index 0000000..7f3a565
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/impl/SysMenuServiceImpl.java
@@ -0,0 +1,18 @@
+package cn.xf.basedemo.service.impl;
+
+import cn.xf.basedemo.model.domain.SysMenu;
+import cn.xf.basedemo.service.SysMenuService;
+import cn.xf.basedemo.mappers.SysMenuMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_menu(系统菜单表 sys_menu)】的数据库操作Service实现
+* @createDate 2025-08-19 21:22:03
+*/
+@Service
+public class SysMenuServiceImpl extends ServiceImpl
+implements SysMenuService{
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/SysPermissionServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/SysPermissionServiceImpl.java
new file mode 100644
index 0000000..49842f0
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/impl/SysPermissionServiceImpl.java
@@ -0,0 +1,18 @@
+package cn.xf.basedemo.service.impl;
+
+import cn.xf.basedemo.model.domain.SysPermission;
+import cn.xf.basedemo.service.SysPermissionService;
+import cn.xf.basedemo.mappers.SysPermissionMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_permission(系统权限表 sys_permission)】的数据库操作Service实现
+* @createDate 2025-08-19 21:22:03
+*/
+@Service
+public class SysPermissionServiceImpl extends ServiceImpl
+implements SysPermissionService{
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/SysRoleMenuServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/SysRoleMenuServiceImpl.java
new file mode 100644
index 0000000..4ce9a19
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/impl/SysRoleMenuServiceImpl.java
@@ -0,0 +1,17 @@
+package cn.xf.basedemo.service.impl;
+
+import cn.xf.basedemo.model.domain.SysRoleMenu;
+import cn.xf.basedemo.service.SysRoleMenuService;
+import cn.xf.basedemo.mappers.SysRoleMenuMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role_menu(角色菜单关联表 sys_role_menu)】的数据库操作Service实现
+* @createDate 2025-08-19 21:22:03
+*/
+@Service
+public class SysRoleMenuServiceImpl extends ServiceImpl implements SysRoleMenuService {
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/SysRolePermissionServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/SysRolePermissionServiceImpl.java
new file mode 100644
index 0000000..644cb66
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/impl/SysRolePermissionServiceImpl.java
@@ -0,0 +1,18 @@
+package cn.xf.basedemo.service.impl;
+
+import cn.xf.basedemo.model.domain.SysRolePermission;
+import cn.xf.basedemo.service.SysRolePermissionService;
+import cn.xf.basedemo.mappers.SysRolePermissionMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role_permission(角色权限关联表 sys_role_permission)】的数据库操作Service实现
+* @createDate 2025-08-19 21:22:03
+*/
+@Service
+public class SysRolePermissionServiceImpl extends ServiceImpl
+implements SysRolePermissionService{
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/SysRoleServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/SysRoleServiceImpl.java
new file mode 100644
index 0000000..5ea8334
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/impl/SysRoleServiceImpl.java
@@ -0,0 +1,18 @@
+package cn.xf.basedemo.service.impl;
+
+import cn.xf.basedemo.model.domain.SysRole;
+import cn.xf.basedemo.service.SysRoleService;
+import cn.xf.basedemo.mappers.SysRoleMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_role(系统角色表 sys_role)】的数据库操作Service实现
+* @createDate 2025-08-19 21:22:03
+*/
+@Service
+public class SysRoleServiceImpl extends ServiceImpl
+implements SysRoleService{
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/SysUserRoleServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/SysUserRoleServiceImpl.java
new file mode 100644
index 0000000..033f3d1
--- /dev/null
+++ b/src/main/java/cn/xf/basedemo/service/impl/SysUserRoleServiceImpl.java
@@ -0,0 +1,18 @@
+package cn.xf.basedemo.service.impl;
+
+import cn.xf.basedemo.model.domain.SysUserRole;
+import cn.xf.basedemo.service.SysUserRoleService;
+import cn.xf.basedemo.mappers.SysUserRoleMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author xiongfeng
+* @description 针对表【sys_user_role(用户角色关联表 sys_user_role)】的数据库操作Service实现
+* @createDate 2025-08-19 21:22:03
+*/
+@Service
+public class SysUserRoleServiceImpl extends ServiceImpl
+implements SysUserRoleService{
+
+}
diff --git a/src/main/java/cn/xf/basedemo/service/impl/UserServiceImpl.java b/src/main/java/cn/xf/basedemo/service/impl/UserServiceImpl.java
index 7ddc1dd..eff1f8a 100644
--- a/src/main/java/cn/xf/basedemo/service/impl/UserServiceImpl.java
+++ b/src/main/java/cn/xf/basedemo/service/impl/UserServiceImpl.java
@@ -1,5 +1,6 @@
package cn.xf.basedemo.service.impl;
+import cn.dev33.satoken.stp.StpUtil;
import cn.xf.basedemo.common.model.EsBaseModel;
import cn.xf.basedemo.common.model.LoginInfo;
import cn.xf.basedemo.common.model.LoginUser;
@@ -90,7 +91,8 @@ public class UserServiceImpl implements UserService {
redisTemplate.opsForValue().set("token:" + token, JSONObject.toJSONString(loginUser), 3600, TimeUnit.SECONDS);
redisTemplate.opsForValue().set("user_login_token:" + user.getId(), token, 3600, TimeUnit.SECONDS);
-
+ //登录成功 写入sa-token中
+ StpUtil.login(user.getId());
return RetObj.success(loginUser);
}
diff --git a/src/main/resources/mapper/SysMenuMapper.xml b/src/main/resources/mapper/SysMenuMapper.xml
new file mode 100644
index 0000000..85ddb50
--- /dev/null
+++ b/src/main/resources/mapper/SysMenuMapper.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ id,name,path,
+ parent_id,type,icon,
+ create_time,create_by,update_time,
+ update_by
+
+
diff --git a/src/main/resources/mapper/SysPermissionMapper.xml b/src/main/resources/mapper/SysPermissionMapper.xml
new file mode 100644
index 0000000..d2bc047
--- /dev/null
+++ b/src/main/resources/mapper/SysPermissionMapper.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ id,code,name,
+ menu_id,create_time,create_by,
+ update_time,update_by
+
+
+
+
diff --git a/src/main/resources/mapper/SysRoleMapper.xml b/src/main/resources/mapper/SysRoleMapper.xml
new file mode 100644
index 0000000..2c92b14
--- /dev/null
+++ b/src/main/resources/mapper/SysRoleMapper.xml
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ id,name,code,
+ status,create_time,create_by,
+ update_time,update_by
+
+
+
+
diff --git a/src/main/resources/mapper/SysRoleMenuMapper.xml b/src/main/resources/mapper/SysRoleMenuMapper.xml
new file mode 100644
index 0000000..663d0c3
--- /dev/null
+++ b/src/main/resources/mapper/SysRoleMenuMapper.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ role_id,menu_id,create_time,
+ create_by,update_time,update_by
+
+
diff --git a/src/main/resources/mapper/SysRolePermissionMapper.xml b/src/main/resources/mapper/SysRolePermissionMapper.xml
new file mode 100644
index 0000000..2b68d70
--- /dev/null
+++ b/src/main/resources/mapper/SysRolePermissionMapper.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ role_id,permission_id,create_time,
+ create_by,update_time,update_by
+
+
diff --git a/src/main/resources/mapper/SysUserRoleMapper.xml b/src/main/resources/mapper/SysUserRoleMapper.xml
new file mode 100644
index 0000000..30caf1c
--- /dev/null
+++ b/src/main/resources/mapper/SysUserRoleMapper.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ user_id,role_id,create_time,
+ create_by,update_time,update_by
+
+