| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- declare (strict_types = 1);
- namespace app\admin\controller;
- use app\BaseController;
- use app\common\model\AuthGroupAccessModel;
- use app\common\model\AuthGroupModel;
- use app\common\model\AuthRuleModel;
- use app\Request;
- use think\App;
- use think\facade\View;
- class Index extends BaseController
- {
- private $authGroupModel;
- private $authGroupAccessModel;
- private $authRuleModel;
- public function __construct(App $app)
- {
- $this->authGroupModel = new AuthGroupModel();
- $this->authGroupAccessModel = new AuthGroupAccessModel();
- $this->authRuleModel = new AuthRuleModel();
- parent::__construct($app);
- }
- private function loadRuleTreeByAdminId(int $adminId) {
- $access = $this->authGroupAccessModel->where('uid',$adminId)->find();
- if ($access->group_id > 0) {
- $group = $this->authGroupModel->where('id',$access->group_id)->find();
- if ($group) {
- $rules_str = $group->rules;
- $rules = [];
- if($rules_str == "*"){
- $rules = $this->authRuleModel->select();
- } else {
- $rules = $this->authRuleModel->select(explode(',',$rules_str));
- }
- return $rules;
- }
- }
- return [];
- }
- public function index(Request $request)
- {
- $adminId = 10000; //$request->param(['adminId']);
- $rules = $this->loadRuleTreeByAdminId($adminId);
- View::assign('rules',recursion($rules,0));
- return view();
- }
- public function home()
- {
- return view();
- }
- }
|