public function distribute($role_id) { //实例化对象 $role = new \Model\RoleModel(); if (!empty($_POST)) { //调用子model方法实现数据制作并存入数据库 $z = $role->saveAuth($_POST['auth_id'], $_POST['role_id']); if ($z) { $this->redirect('showlist', array(), 2, '分配权限成功'); } } //获得对应权限 $auth = D('auth'); $auth_infoA = $auth->where('auth_level=0')->select(); //顶级权限 $auth_infoB = $auth->where('auth_level=1')->select(); //次顶级权限 //根据$role_id 查询分配权限的角色信息 $role_info = D('role')->find($role_id); //勾选已有权限 $auth_arr = explode(",", $role_info['role_auth_ids']); $this->assign('auth_arr', $auth_arr); $this->assign('auth_infoA', $auth_infoA); $this->assign('auth_infoB', $auth_infoB); $this->assign('role_info', $role_info); $this->display(); }
function distribute($role_id){ if(!empty($_POST)){ //利用RoleModel模型里边的一个专门方法实现权限分配 $role = new \Model\RoleModel(); //saveAuth接收到一维数组信息 $z = $role -> saveAuth($_POST['authname'], $role_id); if($z){ $this -> success('分配权限成功!',U('showlist')); } else { $this -> error('分配权限失败!',U('showlist')); } } else { //根据$role_id查询对应的角色名字 $rinfo = D("Role")->getByRole_id($role_id); $this -> assign('role_name', $rinfo['role_name']); //查询全部的权限信息,放入模板显示并进行权限分配 $pauth_info = D('Auth')->where('auth_level=0')->select(); //父级权限 $sauth_info = D('Auth')->where('auth_level=1')->select(); //次父级权限 $tauth_info = D('Auth')->where('auth_level=2')->select(); //次次父级权限 //把当前角色对应的权限信息给查询出来 $authinfo = D("Role")->getByRole_id($role_id); $auth_ids_arr = explode(',',$authinfo['role_auth_ids']); //数组auth_id 信息 $this -> assign('auth_ids_arr', $auth_ids_arr); $this -> assign('pauth_info',$pauth_info); $this -> assign('sauth_info',$sauth_info); $this -> assign('tauth_info',$tauth_info); $this -> display(); } }
public function distribute($id) { if (!empty($_POST)) { // print_r($_POST); // Array ( [authname] => Array ( [0] => 1 [1] => 7 [2] => 8 ) ) // 收集数据 // 利用RoleModel 模型里边的一个专门方法实现权限分配 $role = new \Model\RoleModel(); // saveAuth 接收到一维数组信息 $z = $role->saveAuth($_POST['authname'], $id); if ($z) { $this->success('分配权限成功', U('list')); } else { $this->error('分配权限失败', U('list')); } } else { // 根据 id 查询对应的角色名字 //$rinfo = D('Role') -> getByRole_id($id); $rinfo = D('Role')->where("id={$id}")->find(); $this->assign('name', $rinfo['name']); // 查询全部的权限信息 放入模板显示并进行权限分配 // SELECT * FROM `yhd_auth` WHERE ( level=0 ) $pinfo = D('Auth')->where("level=0")->select(); // 父级权限 $sinfo = D('Auth')->where("level=1")->select(); // 次父级权限 $tinfo = D('Auth')->where("level=2")->select(); // 次次父级权限 // 把当前角色对应的权限信息给查询出来 //$authinfo = D('Role') -> getByRole_id($id); $authinfo = D('Role')->where("id={$id}")->find(); // $auth_ids = $authinfo['auth_ids']; // $auth_ids_arr = explode(',', $auth_ids); // 合并二个语句 将1,6,7,8 转换数组 $auth_ids_arr = explode(',', $authinfo['auth_ids']); //show_bug($auth_ids_arr); $this->assign('auth_ids_arr', $auth_ids_arr); $this->assign('pinfo', $pinfo); $this->assign('sinfo', $sinfo); $this->assign('tinfo', $tinfo); $this->display(); } }