权限分配
This commit is contained in:
@@ -775,33 +775,35 @@ class SysRuleSeeder extends Seeder
|
||||
->select(DB::raw('1 as role_id'), 'id')
|
||||
);
|
||||
|
||||
// 创建"商户"角色并分配商户门户权限
|
||||
$merchantRoleExists = DB::table('sys_role')->where('name', '商户')->exists();
|
||||
if (! $merchantRoleExists) {
|
||||
$merchantRoleId = DB::table('sys_role')->insertGetId([
|
||||
'name' => '商户',
|
||||
'status' => 1,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
// 为商户角色分配 merchant.portal.* 及 dashboard 权限
|
||||
$portalRuleIds = DB::table('sys_rule')
|
||||
->where('status', 1)
|
||||
->where(function ($query) {
|
||||
$query->where('key', 'LIKE', 'merchant.portal%')
|
||||
->orWhere('key', 'dashboard')
|
||||
->orWhere('key', 'dashboard.analysis');
|
||||
})
|
||||
->pluck('id');
|
||||
|
||||
// 为商户角色分配 merchant.portal.* 及 dashboard 权限
|
||||
$portalRuleIds = DB::table('sys_rule')
|
||||
->where('status', 1)
|
||||
->where(function ($query) {
|
||||
$query->where('key', 'LIKE', 'merchant.portal.%')
|
||||
->orWhere('key', 'dashboard')
|
||||
->orWhere('key', 'dashboard.analysis');
|
||||
})
|
||||
->pluck('id');
|
||||
|
||||
$insertData = $portalRuleIds->map(fn ($ruleId) => [
|
||||
'role_id' => $merchantRoleId,
|
||||
DB::table('sys_role_rule')->insert(
|
||||
$portalRuleIds->map(fn ($ruleId) => [
|
||||
'role_id' => 3,
|
||||
'rule_id' => $ruleId,
|
||||
])->toArray();
|
||||
])->toArray()
|
||||
);
|
||||
|
||||
DB::table('sys_role_rule')->insert($insertData);
|
||||
}
|
||||
// 为管理员角色分配所有启用权限,排除 merchant.portal.*(商户门户权限)
|
||||
$adminRuleIds = DB::table('sys_rule')
|
||||
->where('status', 1)
|
||||
->where('key', 'NOT LIKE', 'merchant.portal%')
|
||||
->pluck('id');
|
||||
|
||||
DB::table('sys_role_rule')->insert(
|
||||
$adminRuleIds->map(fn ($ruleId) => [
|
||||
'role_id' => 2,
|
||||
'rule_id' => $ruleId,
|
||||
])->toArray()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -18,8 +18,8 @@ class SysUserSeeder extends Seeder
|
||||
DB::table('sys_user')->insert([
|
||||
[
|
||||
'id' => 1,
|
||||
'username' => 'admin',
|
||||
'nickname' => '管理员',
|
||||
'username' => 'super_admin',
|
||||
'nickname' => '超级管理员',
|
||||
'email' => Str::random(10).'@example.com',
|
||||
'password' => Hash::make('123456'),
|
||||
'dept_id' => 1,
|
||||
@@ -31,11 +31,11 @@ class SysUserSeeder extends Seeder
|
||||
],
|
||||
[
|
||||
'id' => 2,
|
||||
'username' => 'user',
|
||||
'nickname' => '财务',
|
||||
'username' => 'admin',
|
||||
'nickname' => '管理员',
|
||||
'email' => Str::random(10).'@example.com',
|
||||
'password' => Hash::make('123456'),
|
||||
'dept_id' => 2,
|
||||
'dept_id' => 1,
|
||||
'avatar_id' => 1,
|
||||
'email_verified_at' => now(),
|
||||
'remember_token' => Str::random(10),
|
||||
@@ -45,9 +45,8 @@ class SysUserSeeder extends Seeder
|
||||
]);
|
||||
DB::table('sys_role')->insert([
|
||||
['id' => 1, 'name' => '超级管理员', 'created_at' => $date, 'updated_at' => $date],
|
||||
['id' => 2, 'name' => '财务', 'created_at' => $date, 'updated_at' => $date],
|
||||
['id' => 3, 'name' => '电商总监', 'created_at' => $date, 'updated_at' => $date],
|
||||
['id' => 4, 'name' => '市场运营', 'created_at' => $date, 'updated_at' => $date],
|
||||
['id' => 2, 'name' => '管理员', 'created_at' => $date, 'updated_at' => $date],
|
||||
['id' => 3, 'name' => '商户', 'created_at' => $date, 'updated_at' => $date],
|
||||
]);
|
||||
DB::table('sys_dept')->insert([
|
||||
[
|
||||
@@ -63,63 +62,7 @@ class SysUserSeeder extends Seeder
|
||||
'remark' => '总公司',
|
||||
'created_at' => $date,
|
||||
'updated_at' => $date
|
||||
],
|
||||
[
|
||||
'id' => 2,
|
||||
'name' => '新时代软件技术(洛阳)有限公司',
|
||||
'code' => 'A01-B01',
|
||||
'type' => 0,
|
||||
'parent_id' => 1,
|
||||
'sort' => 0,
|
||||
'phone' => '19999999999',
|
||||
'email' => Str::random(10).'@example.com',
|
||||
'address' => '河南省洛阳市龙门区某某街道99号',
|
||||
'remark' => '洛阳市分公司',
|
||||
'created_at' => $date,
|
||||
'updated_at' => $date
|
||||
],
|
||||
[
|
||||
'id' => 3,
|
||||
'name' => '新时代智能科技(郑州)有限公司',
|
||||
'code' => 'A01-B02',
|
||||
'type' => 0,
|
||||
'parent_id' => 1,
|
||||
'sort' => 0,
|
||||
'phone' => '19999999999',
|
||||
'email' => Str::random(10).'@example.com',
|
||||
'address' => '河南省郑州市二七区某某街道69号',
|
||||
'remark' => '郑州市分公司',
|
||||
'created_at' => $date,
|
||||
'updated_at' => $date
|
||||
],
|
||||
[
|
||||
'id' => 4,
|
||||
'name' => '新征程科技(南阳)有限公司',
|
||||
'code' => 'A01-B03',
|
||||
'type' => 0,
|
||||
'parent_id' => 1,
|
||||
'sort' => 2,
|
||||
'phone' => '19999999999',
|
||||
'email' => Str::random(10).'@example.com',
|
||||
'address' => '河南省南阳市卧龙区某某街道77号',
|
||||
'remark' => '南阳市分公司',
|
||||
'created_at' => $date,
|
||||
'updated_at' => $date
|
||||
],
|
||||
[
|
||||
'id' => 5,
|
||||
'name' => '新时代投资发展有限公司',
|
||||
'code' => 'B01',
|
||||
'type' => 0,
|
||||
'parent_id' => 0,
|
||||
'sort' => 2,
|
||||
'phone' => '19999999999',
|
||||
'email' => Str::random(10).'@example.com',
|
||||
'address' => '北京市海淀区人民路666号',
|
||||
'remark' => '我们坚信,卓越的投资在于发现价值,而卓越的投资管理在于创造价值。我们立志成为科技创业者身边最懂业务、最能赋能、最长情的资本伙伴,共同将创新的火种,转化为引领行业的参天大树。',
|
||||
'created_at' => $date,
|
||||
'updated_at' => $date
|
||||
],
|
||||
]
|
||||
]);
|
||||
|
||||
DB::table('sys_user_role')->insert([
|
||||
|
||||
Reference in New Issue
Block a user