feat(database): 添加用户角色权限系统及相关监控功能

- 创建用户表(users)包含基本信息和认证字段
- 创建角色表(roles)用于权限控制
- 创建权限表(permissions)定义系统权限
- 创建用户角色关联表(user_roles)建立用户与角色关系
- 创建角色权限关联表(role_permissions)建立角色与权限关系
- 创建迁移记录表(migrations)追踪数据库变更
- 添加AdminController提供管理员面板功能
- 实现系统监控、配置管理、缓存清理等功能
- 添加AOP切面编程支持的各种通知类型
- 实现告警管理AlertManager支持多渠道告警
- 添加文档注解接口规范
This commit is contained in:
Lawson
2026-04-08 17:00:28 +08:00
commit 2782d765fb
270 changed files with 107192 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
<?php
declare(strict_types=1);
use Fendx\Database\Seeder\Seeder;
use Fendx\Database\Seeder\RoleSeeder;
use Fendx\Database\Seeder\PermissionSeeder;
use Fendx\Database\Seeder\UserSeeder;
use Fendx\Database\Seeder\RolePermissionSeeder;
use Fendx\Database\Seeder\UserRoleSeeder;
/**
* 数据库种子数据主文件
*/
class DatabaseSeeder extends Seeder
{
/**
* 运行所有种子数据
*/
public function run(): void
{
$this->command->info('开始执行数据库种子数据...');
// 1. 创建角色数据
$this->command->info('正在插入角色数据...');
$this->call(RoleSeeder::class);
// 2. 创建权限数据
$this->command->info('正在插入权限数据...');
$this->call(PermissionSeeder::class);
// 3. 创建用户数据
$this->command->info('正在插入用户数据...');
$this->call(UserSeeder::class);
// 4. 创建角色权限关联数据
$this->command->info('正在插入角色权限关联数据...');
$this->call(RolePermissionSeeder::class);
// 5. 创建用户角色关联数据
$this->command->info('正在插入用户角色关联数据...');
$this->call(UserRoleSeeder::class);
$this->command->info('所有种子数据执行完成!');
}
/**
* 调用指定的种子类
*/
private function call(string $seederClass): void
{
if (class_exists($seederClass)) {
$seeder = new $seederClass();
$seeder->setCommand($this->command);
$seeder->run();
} else {
$this->command->error("种子类不存在: {$seederClass}");
}
}
}