public static function getAccess($roleId) { $access = KxAdminAccess::find("role_id={$roleId}"); return $access->toArray(); }
/** * @param $roleId * @access Follow(kxAdminRole/index) */ public function editRoleAccessAction($roleId) { if (!isset($roleId)) { parent::errorPage("editRoleAccessAction expect one parameter \$roleId"); } $role = KxAdminRole::findFirst($roleId); if (!$role) { parent::errorPage("editRoleAccessAction take wrong parameter \$roleId=({$roleId})"); } $access = KxAdminAccess::getAccess($role->role_id); $controllerNodes = $this->getControllerNodes(); foreach ($controllerNodes as $controller => &$nodes) { foreach ($nodes as &$node) { $node['access'] = false; $node['menu_group_id'] = 0; // $nodeId = $node['node_id']; foreach ($access as $a) { $accessNodeId = $a['node_id']; if ($nodeId == $accessNodeId) { $node['access'] = true; $node['menu_group_id'] = $a['menu_group_id']; break; } } } unset($node); } unset($nodes); $menus = KxAdminRoleMenu::find("role_id={$roleId}"); $data = array('controllerNodes' => $controllerNodes, 'menus' => $menus->toArray(), 'role_name' => $role->name); $views = [["name" => '访问控制', "template" => "kxadminrole/edit_role_access"]]; parent::showTabViews($views, '角色访问控制', $data); }