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.
36 lines
1.2 KiB
36 lines
1.2 KiB
|
5 years ago
|
<?php
|
||
|
|
|
||
|
|
namespace App\Http\Controllers\Admin;
|
||
|
|
|
||
|
|
use App\Forms\PermissionForm;
|
||
|
|
use Kris\LaravelFormBuilder\Field;
|
||
|
|
use Kris\LaravelFormBuilder\FormBuilder;
|
||
|
|
use Spatie\Permission\Models\Permission;
|
||
|
|
|
||
|
|
class PermissionController extends CommonController
|
||
|
|
{
|
||
|
|
public $urlPrefix = "admin/permission";
|
||
|
|
public $bladePath = "admin.permission";
|
||
|
|
public $modelClass = Permission::class;
|
||
|
|
public $formClass = PermissionForm::class;
|
||
|
|
public $modelName = "权限菜单";
|
||
|
|
|
||
|
|
public function index(FormBuilder $formBuilder)
|
||
|
|
{
|
||
|
|
$data = Permission::where("guard_name", $this->guardName)->orderBy("myindex")->get()->toArray();
|
||
|
|
$data = array2tree($data);
|
||
|
|
$data = flatten_tree($data);
|
||
|
|
|
||
|
|
$form = $formBuilder->create($this->formClass, [
|
||
|
|
"method" => "POST",
|
||
|
|
"id" => "fm"
|
||
|
|
]);
|
||
|
|
$form->modify('buttons', 'buttongroup', ["splitted" => true, "buttons" => [
|
||
|
|
["label" => "保存", "attr" => ["class" => "btn btn-primary btn-save mr-1", "type" => "button"]]
|
||
|
|
]], true);
|
||
|
|
$form->add("guard_name", Field::HIDDEN, ["value" => $this->guardName]);
|
||
|
|
|
||
|
|
return view($this->bladePath . ".index", compact("data", "form"));
|
||
|
|
}
|
||
|
|
}
|