RAP 是一个基于 Laravel 的后台管理系统组件包,提供完整的 RBAC 权限管理、用户认证、日志记录等功能。
- 用户认证与授权管理 (JWT + RBAC)
- 完整的权限控制系统
- 操作日志与 SQL 日志记录
- API 限流与跨域处理
- 统一异常处理
- 代码生成工具
- PHP >= 8.2
- Laravel >= 11.0
- MySQL >= 5.7
composer require chaihao/laravel-rap-admin
- 发布配置文件
php artisan vendor:publish --tag=rap-config
- 运行数据库迁移
php artisan migrate
- 生成 JWT 密钥
php artisan jwt:secret
# 时区配置
APP_TIMEZONE=PRC
# 语言配置
APP_LOCALE=zh_CN
APP_FALLBACK_LOCALE=zh
APP_FAKER_LOCALE=zh-CN
# 缓存配置
CACHE_STORE=redis
CACHE_PREFIX=
# API 配置
RAP_API_PREFIX=api # API 路由前缀
RAP_API_GUARD=api # API 认证守卫
RAP_CONTROLLER_VERSION=V1\ # 控制器版本
RAP_CREATE_SERVICES_MODEL=true # 创建service时,同时创建model
RAP_CREATE_SERVICES_CONTROLLER=true # 创建service时,同时创建controller
# 日志配置
RAP_ENABLE_SQL_LOGGING=true # 启用 SQL 日志
RAP_SQL_LOG_LEVEL=debug # 日志级别
RAP_SQL_LOG_DAYS=14 # 日志保留天数
# 系统配置
SYSTEM_UPGRADE=false # 系统升级模式
# 认证相关路由
POST /auth/login # 登录
POST /auth/register # 注册
POST /auth/staff_info # 获取用户信息
POST /auth/logout # 退出登录
# 权限管理路由
POST /permission/add # 添加权限
POST /permission/create_role # 创建角色
POST /permission/assign_role # 分配角色
POST /permission/get_all # 获取权限列表
POST /permission/get_all_roles # 获取角色列表
POST /permission/sync_role_permissions # 同步角色权限
# 统一异常处理
throw new ApiException('操作失败', ApiException::BAD_REQUEST);
# 支持的错误码
- BAD_REQUEST (400) # 请求错误
- UNAUTHORIZED (401) # 未授权
- FORBIDDEN (403) # 禁止访问
- NOT_FOUND (404) # 未找到
- VALIDATION_ERROR (422) # 验证错误
- SERVER_ERROR (500) # 服务器错误
# 核心中间件
'check.auth' # JWT 认证
'permission' # 权限验证
'cors' # 跨域处理
'request.response.logger' # 请求响应日志
'upgrade' # 系统升级模式
# 默认中间件组 rap-api
[
'check.auth',
'permission',
'request.response.logger'
]
# 生成各类文件
php artisan make:controller UserController # 控制器
php artisan make:model User # 模型
php artisan make:services UserService # 服务类
php artisan make:repositories UserRepo # 仓储类
php artisan make:services User/UserService
# 生成文件
app/Http/Controllers/User/UserController.php
app/Models/User/User.php
app/Services/User/UserService.php
# 发布语言文件 (可选)
php artisan vendor:publish --tag=rap-lang
# 支持的语言包内容
- 验证消息
- 系统消息
- 错误提示
# 日志类型
- SQL 查询日志
- 请求响应日志
- 操作日志
# 日志位置
- SQL日志: storage/logs/sql/
- 系统日志: storage/logs/laravel.log
# 1. 更新组件
composer update chaihao/rap
# 2. 发布新资源
php artisan vendor:publish --tag=rap-config
php artisan vendor:publish --tag=rap-migrations
# 3. 执行迁移
php artisan migrate
- 检查是否已生成 JWT 密钥
- 确认 token 格式正确
- 检查用户权限分配
- 确认权限名称正确
- 检查 CORS 配置
- 确认请求头设置
- 优化代码生成器
- 支持自动创建关联文件(Model/Controller)
- 改进模板结构,提供更多默认实现
- 增强字段类型识别和验证规则生成
- 完善权限管理
- 新增权限缓存机制
- 支持权限组管理
- 优化权限检查性能
- 增强异常处理
- 支持更详细的调试信息
- 统一异常响应格式
- 新增常用异常类型
- 改进中间件
- 优化请求日志记录
- 增强跨域处理
- 完善升级模式控制
MIT
如有问题,请提交 Issue 或联系技术支持。