Commit 13789983 authored by hangjun83's avatar hangjun83

后端:初始化数据调整

parent aaf0a44d
...@@ -5,6 +5,7 @@ use Illuminate\Database\Seeder; ...@@ -5,6 +5,7 @@ use Illuminate\Database\Seeder;
use App\Support\Traits\Helpers; use App\Support\Traits\Helpers;
use App\Repositories\Models\AdminUsers; use App\Repositories\Models\AdminUsers;
use Illuminate\Support\Facades\DB;
class AdminUsersSeeder extends Seeder class AdminUsersSeeder extends Seeder
{ {
...@@ -27,6 +28,11 @@ class AdminUsersSeeder extends Seeder ...@@ -27,6 +28,11 @@ class AdminUsersSeeder extends Seeder
public function run() public function run()
{ {
//$this->command->getOutput()->info('正在初始化管理员数据中.');
try{
DB::beginTransaction();
collect($this->userList)->map(function($user){ collect($this->userList)->map(function($user){
$admin = app(AdminUsers::class); $admin = app(AdminUsers::class);
...@@ -39,5 +45,14 @@ class AdminUsersSeeder extends Seeder ...@@ -39,5 +45,14 @@ class AdminUsersSeeder extends Seeder
}); });
DB::commit();
$this->command->getOutput()->info('初始化管理员数据成功.');
}catch(Exception $e){
$this->command->getOutput()->error('初始化管理员失败,原因:'.$e->getMessage());
DB::rollback();
}
} }
} }
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use App\Repositories\Models\Menus; use App\Repositories\Models\Menus;
use Illuminate\Support\Facades\DB;
class MenusSeeder extends Seeder class MenusSeeder extends Seeder
{ {
...@@ -97,11 +98,61 @@ class MenusSeeder extends Seeder ...@@ -97,11 +98,61 @@ class MenusSeeder extends Seeder
'sort' => 1.10, 'sort' => 1.10,
'created_by' => 0, 'created_by' => 0,
'created_at' => '', 'created_at' => '',
'updated_at' => '' 'updated_at' => '',
'children' => [
[
'menu_name' => 'menu_permission_add',
'title' => '添加菜单',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'menu_permission_edit',
'title' => '编辑菜单',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'menu_permission_delete',
'title' => '删除菜单',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
]
]
], ],
[ [
'menu_name' => 'role_permission', 'menu_name' => 'role_permission',
'title' => '用户权限管理', 'title' => '角色权限管理',
'menu_path' => '/permission', 'menu_path' => '/permission',
'parent_id' => 0, 'parent_id' => 0,
'menu_type' => 'page', 'menu_type' => 'page',
...@@ -113,7 +164,89 @@ class MenusSeeder extends Seeder ...@@ -113,7 +164,89 @@ class MenusSeeder extends Seeder
'sort' => 1.11, 'sort' => 1.11,
'created_by' => 0, 'created_by' => 0,
'created_at' => '', 'created_at' => '',
'updated_at' => '' 'updated_at' => '',
'children' => [
[
'menu_name' => 'role_permission_add',
'title' => '添加角色',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'role_permission_edit',
'title' => '编辑角色',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'role_permission_delete',
'title' => '删除角色',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'role_permission_editPermission',
'title' => '角色权限分配',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'role_permission_setDefault',
'title' => '角色默认设置',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
]
]
], ],
[ [
'menu_name' => 'user_manage', 'menu_name' => 'user_manage',
...@@ -129,7 +262,105 @@ class MenusSeeder extends Seeder ...@@ -129,7 +262,105 @@ class MenusSeeder extends Seeder
'sort' => 1.11, 'sort' => 1.11,
'created_by' => 0, 'created_by' => 0,
'created_at' => '', 'created_at' => '',
'updated_at' => '' 'updated_at' => '',
'children' => [
[
'menu_name' => 'user_permission_search',
'title' => '搜索用户',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'user_permission_add',
'title' => '添加用户',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'user_permission_edit',
'title' => '编辑用户',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'user_permission_delete',
'title' => '删除用户',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'user_permission_enable',
'title' => '启用用户',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
],
[
'menu_name' => 'user_permission_disable',
'title' => '禁用用户',
'menu_path' => '#',
'parent_id' => 0,
'menu_type' => 'button',
'menu_icon' => '#',
'component' => '#',
'status' => 1,
'is_show' => 1,
'sys_default' => 1,
'sort' => 1.11,
'created_by' => 0,
'created_at' => '',
'updated_at' => '',
]
]
], ],
], ],
'doc_manage' => 'doc_manage' =>
...@@ -141,7 +372,7 @@ class MenusSeeder extends Seeder ...@@ -141,7 +372,7 @@ class MenusSeeder extends Seeder
'parent_id' => 0, 'parent_id' => 0,
'menu_type' => 'page', 'menu_type' => 'page',
'menu_icon' => 'ios-document', 'menu_icon' => 'ios-document',
'component' => 'doc-manage/server', 'component' => 'doc-manage/framework',
'status' => 1, 'status' => 1,
'is_show' => 1, 'is_show' => 1,
'sys_default' => 1, 'sys_default' => 1,
...@@ -156,33 +387,62 @@ class MenusSeeder extends Seeder ...@@ -156,33 +387,62 @@ class MenusSeeder extends Seeder
public function run() public function run()
{ {
foreach($this->menuList as $menu){ //$this->command->getOutput()->info('正在初始化菜单数据中.');
$menu['created_at'] = date('Y-m-d H:i:s',time()); try {
$menu['updated_at'] = date('Y-m-d H:i:s',time()); DB::beginTransaction();
foreach ($this->menuList as $menu) {
$menu['created_at'] = date('Y-m-d H:i:s', time());
$menu['updated_at'] = date('Y-m-d H:i:s', time());
$childrenItem = $menu['children']; $childrenItem = $menu['children'];
unset($menu['children']); unset($menu['children']);
$id = Menus::query()->insertGetId($menu); $id = Menus::query()->insertGetId($menu);
if(isset($childrenItem) && !empty($childrenItem)){ if (isset($childrenItem) && !empty($childrenItem)) {
foreach($childrenItem as $children){ foreach ($childrenItem as $children) {
$children['parent_id'] = $id; $children['parent_id'] = $id;
$children['created_at'] = date('Y-m-d H:i:s',time()); $children['created_at'] = date('Y-m-d H:i:s', time());
$children['updated_at'] = date('Y-m-d H:i:s',time()); $children['updated_at'] = date('Y-m-d H:i:s', time());
$childrenId = Menus::query()->insertGetId($children); $childrenId = Menus::query()->insertGetId($children);
if(isset($this->subMenusList[$children['menu_name']]) && !empty($this->subMenusList[$children['menu_name']])){ if (isset($this->subMenusList[$children['menu_name']]) && !empty($this->subMenusList[$children['menu_name']])) {
collect($this->subMenusList[$children['menu_name']])->map(function($subMenus) use ($childrenId){ collect($this->subMenusList[$children['menu_name']])->map(function ($subMenus) use ($childrenId) {
$subMenus['parent_id'] = $childrenId; $subMenus['parent_id'] = $childrenId;
$subMenus['created_at'] = date('Y-m-d H:i:s',time()); $subMenus['created_at'] = date('Y-m-d H:i:s', time());
$subMenus['updated_at'] = date('Y-m-d H:i:s',time()); $subMenus['updated_at'] = date('Y-m-d H:i:s', time());
if(isset($subMenus['children']) && !empty($subMenus['children'])){
$subChildrenItem = $subMenus['children'];
unset($subMenus['children']);
Menus::query()->insertGetId($subMenus); $subMenuId = Menus::query()->insertGetId($subMenus);
if (isset($subChildrenItem) && !empty($subChildrenItem)) {
foreach ($subChildrenItem as $subChildren) {
$subChildren['parent_id'] = $subMenuId;
$subChildren['created_at'] = date('Y-m-d H:i:s', time());
$subChildren['updated_at'] = date('Y-m-d H:i:s', time());
Menus::query()->insertGetId($subChildren);
}
}
}else{
$subMenuId = Menus::query()->insertGetId($subMenus);
}
}); });
} }
} }
} }
} }
DB::commit();
$this->command->getOutput()->info('菜单数据初始化成功.');
}catch(Exception $e){
$this->command->getOutput()->error('初始化菜单失败,原因:'.$e->getMessage());
DB::rollback();
}
} }
} }
<?php <?php
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Spatie\Permission\Models\Permission; use Spatie\Permission\Models\Permission;
use Spatie\Permission\Models\Role; use Spatie\Permission\Models\Role;
...@@ -142,6 +143,13 @@ class PermissionsSeeder extends Seeder ...@@ -142,6 +143,13 @@ class PermissionsSeeder extends Seeder
public function run() public function run()
{ {
//$this->command->getOutput()->info('正在初始化权限数据中.');
try{
DB::beginTransaction();
collect($this->defaultPermissionList)->map(function($permission){ collect($this->defaultPermissionList)->map(function($permission){
$permission['guard_name'] = config('auth.defaults.guard'); $permission['guard_name'] = config('auth.defaults.guard');
$permission['created_at'] = date('Y-m-d H:i:s',time()); $permission['created_at'] = date('Y-m-d H:i:s',time());
...@@ -158,7 +166,11 @@ class PermissionsSeeder extends Seeder ...@@ -158,7 +166,11 @@ class PermissionsSeeder extends Seeder
$permission = []; $permission = [];
$permission['name'] = $menu['menu_name']; $permission['name'] = $menu['menu_name'];
$permission['menu_id'] = $menu['id']; $permission['menu_id'] = $menu['id'];
$permission['action'] = ''; switch($menu['menu_type']){
case 'page' : $permission['action'] = $menu['menu_name'].'view'; break;
case 'button' : $permission['action'] = $menu['menu_name']; break;
default : $permission['action'] = '';
}
$permission['permission_type'] = 'menu'; $permission['permission_type'] = 'menu';
$permission['sys_default'] = 0; $permission['sys_default'] = 0;
$permission['remark'] = $menu['menu_name'].'的相关权限'; $permission['remark'] = $menu['menu_name'].'的相关权限';
...@@ -176,5 +188,14 @@ class PermissionsSeeder extends Seeder ...@@ -176,5 +188,14 @@ class PermissionsSeeder extends Seeder
$admin = app(AdminUsers::class)->where('is_admin',1)->first(); $admin = app(AdminUsers::class)->where('is_admin',1)->first();
$admin->assignRole($role); $admin->assignRole($role);
$admin->syncPermissions($allPermission); $admin->syncPermissions($allPermission);
DB::commit();
$this->command->getOutput()->info('初始化权限数据成功.');
}catch(Exception $e){
$this->command->getOutput()->error('初始化权限失败,原因:'.$e->getMessage());
DB::rollback();
}
} }
} }
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use App\Repositories\Models\Menus; use App\Repositories\Models\Menus;
use Illuminate\Support\Facades\DB;
use Spatie\Permission\Models\Role; use Spatie\Permission\Models\Role;
class RolesSeeder extends Seeder class RolesSeeder extends Seeder
...@@ -21,6 +22,11 @@ class RolesSeeder extends Seeder ...@@ -21,6 +22,11 @@ class RolesSeeder extends Seeder
public function run() public function run()
{ {
//$this->command->getOutput()->info('正在初始化角色数据中.');
try{
DB::beginTransaction();
collect($this->rolesList)->map(function($role){ collect($this->rolesList)->map(function($role){
$role['guard_name'] = config('auth.defaults.guard'); $role['guard_name'] = config('auth.defaults.guard');
...@@ -31,5 +37,14 @@ class RolesSeeder extends Seeder ...@@ -31,5 +37,14 @@ class RolesSeeder extends Seeder
}); });
DB::commit();
$this->command->getOutput()->info('初始化角色数据成功.');
}catch(Exception $e){
$this->command->getOutput()->error('初始化角色失败,原因:'.$e->getMessage());
DB::rollback();
}
} }
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment