mirror of
https://devops.lemonos.cn/lawson/FendxPHP.git
synced 2026-06-15 23:12:49 +08:00
88 lines
2.7 KiB
PHP
88 lines
2.7 KiB
PHP
|
|
<?php
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
use Fendx\Database\Seeder\Seeder;
|
||
|
|
use Fendx\Database\Connection\DB;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 用户角色关联种子数据
|
||
|
|
*/
|
||
|
|
class UserRoleSeeder extends Seeder
|
||
|
|
{
|
||
|
|
public function run(): void
|
||
|
|
{
|
||
|
|
// 获取用户和角色ID
|
||
|
|
$users = DB::table('users')->pluck('id', 'username')->toArray();
|
||
|
|
$roles = DB::table('roles')->pluck('id', 'name')->toArray();
|
||
|
|
|
||
|
|
$userRoles = [];
|
||
|
|
|
||
|
|
// admin 用户 -> 超级管理员
|
||
|
|
if (isset($users['admin']) && isset($roles['super_admin'])) {
|
||
|
|
$userRoles[] = [
|
||
|
|
'user_id' => $users['admin'],
|
||
|
|
'role_id' => $roles['super_admin'],
|
||
|
|
'guard_name' => 'web',
|
||
|
|
'created_at' => date('Y-m-d H:i:s'),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
// test_user 用户 -> 普通用户
|
||
|
|
if (isset($users['test_user']) && isset($roles['user'])) {
|
||
|
|
$userRoles[] = [
|
||
|
|
'user_id' => $users['test_user'],
|
||
|
|
'role_id' => $roles['user'],
|
||
|
|
'guard_name' => 'web',
|
||
|
|
'created_at' => date('Y-m-d H:i:s'),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
// developer 用户 -> 管理员
|
||
|
|
if (isset($users['developer']) && isset($roles['admin'])) {
|
||
|
|
$userRoles[] = [
|
||
|
|
'user_id' => $users['developer'],
|
||
|
|
'role_id' => $roles['admin'],
|
||
|
|
'guard_name' => 'web',
|
||
|
|
'created_at' => date('Y-m-d H:i:s'),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
// moderator 用户 -> 版主
|
||
|
|
if (isset($users['moderator']) && isset($roles['moderator'])) {
|
||
|
|
$userRoles[] = [
|
||
|
|
'user_id' => $users['moderator'],
|
||
|
|
'role_id' => $roles['moderator'],
|
||
|
|
'guard_name' => 'web',
|
||
|
|
'created_at' => date('Y-m-d H:i:s'),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
// user001 用户 -> 普通用户
|
||
|
|
if (isset($users['user001']) && isset($roles['user'])) {
|
||
|
|
$userRoles[] = [
|
||
|
|
'user_id' => $users['user001'],
|
||
|
|
'role_id' => $roles['user'],
|
||
|
|
'guard_name' => 'web',
|
||
|
|
'created_at' => date('Y-m-d H:i:s'),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
// user002 用户 -> 普通用户
|
||
|
|
if (isset($users['user002']) && isset($roles['user'])) {
|
||
|
|
$userRoles[] = [
|
||
|
|
'user_id' => $users['user002'],
|
||
|
|
'role_id' => $roles['user'],
|
||
|
|
'guard_name' => 'web',
|
||
|
|
'created_at' => date('Y-m-d H:i:s'),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
// 批量插入用户角色关联
|
||
|
|
if (!empty($userRoles)) {
|
||
|
|
DB::table('user_roles')->insert($userRoles);
|
||
|
|
}
|
||
|
|
|
||
|
|
$this->command->info('用户角色关联种子数据插入完成');
|
||
|
|
}
|
||
|
|
}
|