You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
2.7 KiB

<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class InitAdminSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public $guardName = "admin";
public function run()
{
$this->initPermissions();
$this->initRole();
$this->initAdmin();
$permissions = \Spatie\Permission\Models\Permission::get();
$role = \Spatie\Permission\Models\Role::orderBy("id", "desc")->first();
$admin = \App\Models\Admin::orderBy("id", "desc")->first();
$role->syncPermissions($permissions);
$admin->syncRoles([$role]);
}
public function initPermissions()
{
\Spatie\Permission\Models\Permission::create(["id" => 1, "guard_name" => $this->guardName, "name" => "系统管理", "url" => "#", "icon" => "el-icon-setting"]);
\Spatie\Permission\Models\Permission::create(["id" => 2, "pid" => 1, "guard_name" => $this->guardName, "name" => "权限菜单", "url" => "/system/menu", "api_prefix" => "api/admin/menu", "icon" => "el-icon-s-operation"]);
\Spatie\Permission\Models\Permission::create(["id" => 3, "pid" => 1, "guard_name" => $this->guardName, "name" => "角色管理", "url" => "/system/role", "api_prefix" => "api/admin/role", "icon" => "Icon/ios-people"]);
\Spatie\Permission\Models\Permission::create(["id" => 4, "pid" => 1, "guard_name" => $this->guardName, "name" => "权限管理", "url" => "/system/permission", "api_prefix" => "api/admin/permission", "icon" => "el-icon-s-check"]);
\Spatie\Permission\Models\Permission::create(["id" => 5, "pid" => 1, "guard_name" => $this->guardName, "name" => "用户管理", "url" => "/system/user", "api_prefix" => "api/admin/admin", "icon" => "el-icon-s-custom"]);
\Spatie\Permission\Models\Permission::create(["id" => 6, "pid" => 1, "guard_name" => $this->guardName, "name" => "数据字典", "url" => "/system/dictionary", "api_prefix" => "api/admin/parameter", "icon" => "el-icon-set-up"]);
\Spatie\Permission\Models\Permission::create(["id" => 7, "pid" => 1, "guard_name" => $this->guardName, "name" => "部门管理", "url" => "/system/department", "api_prefix" => "api/admin/department", "icon" => "tree"]);
}
public function initRole()
{
\Spatie\Permission\Models\Role::create([
"guard_name" => $this->guardName,
"name" => "系统管理员"
]);
}
public function initAdmin()
{
\App\Models\Admin::create([
"username" => "admin",
"name" => "系统管理员",
"password" => \Illuminate\Support\Facades\Hash::make("Admin" . date("Y"))
]);
}
}