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

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"));
}
}