Exemplo n.º 1
0
 private function AddData($params)
 {
     $rolename = $params['rolename'];
     unset($params['rolename']);
     $menusArr = array_keys($params);
     $ch_groupname = Bll_Authority::check_group_info_by_group_name($rolename);
     if (empty($ch_groupname)) {
         //添加角色表
         $data = array('group_name' => $rolename, 'operation_name' => $this->get_user_name(), 'operation_id' => $this->get_user_id(), 'status' => '1', 'create_time' => time());
         $result = BLL_Authority::insert_group_info($data);
         //给角色添加菜单权限表
         if (!empty($menusArr)) {
             foreach ($menusArr as $menusArrVal) {
                 $AddAuthoritydata = array('group_id' => $result, 'menu_code' => $menusArrVal, 'operation_name' => $this->get_user_name(), 'operation_id' => $this->get_user_id(), 'status' => '1', 'create_time' => time());
                 BLL_Authority::insert_authority_info($AddAuthoritydata);
             }
         }
         $url = $this->build_url(__CLASS__, array('action' => 0));
         $this->response->redirect($url);
         exit;
     } else {
         //表示用户名已存在
         $url = $this->build_url(__CLASS__, array('action' => 1));
         $this->response->redirect($url);
         exit;
     }
 }
Exemplo n.º 2
0
 public function handle_request_internel()
 {
     $params = $this->getParam();
     if ($params['page'] == 'userinfo') {
         //编辑用户信息
         $this->_edit_user($params);
     }
     $userinfoObj = Bll_OA::get_OA_info_by_userid($params['userid']);
     $userinfo = Tool_Array::daoresult_obj_to_arr($userinfoObj->data);
     if (empty($userinfo)) {
         $userinfoObj = Bll_OA::get_OA_info_by_username($params['username']);
         $userinfo = Tool_Array::daoresult_obj_to_arr($userinfoObj->data);
         if (empty($userinfo)) {
             $cUrl = $this->build_url("/error/");
             $this->response->redirect($cUrl);
             exit;
         }
     }
     $usergroup = BLL_Authority::get_user_info_by_user_id($params['userid']);
     $citysArr = explode(',', $usergroup['citys']);
     $groupid = $usergroup['group_id'];
     $citys = $this->_init_user_city($citysArr);
     $citydata = Bll_City::get_city_data();
     $citydata = $this->_init_data_city($citydata, 'CityId');
     //获取所有角色
     $group_all = Bll_Authority::get_all_group_info();
     $this->setAttribute('groupid', $groupid);
     $this->setAttribute('groupall', $group_all);
     $this->setAttribute('citydata', $citydata);
     $this->setAttribute('citys', $citys);
     $this->setAttribute('userinfo', $userinfo);
     $this->setAttribute('params', $params);
     return 'Permissions_UserInfo';
 }
Exemplo n.º 3
0
 public function handle_request_internel()
 {
     $params = $this->getParam();
     //修改角色权限
     if (!empty($params['modify'])) {
         $userlevel = Bll_Authority::get_user_level($this->get_user_id());
         if (!empty($userlevel)) {
             $roleid = $params['roleid'];
             $rolename = $params['rolename'];
             //获取权限菜单,删除不必要的参数
             $params = $this->unsetParams($params);
             $updategroupwhere = array('id' => $roleid);
             $updategroupset = array('group_name' => $rolename);
             Bll_Authority::update_group_info($updategroupset, $updategroupwhere);
             $menusArr = array_keys($params);
             //删除原来菜单权限
             $whereArr = array('group_id' => $roleid);
             $setArr = array('status' => 0);
             Bll_Authority::update_authority_info($setArr, $whereArr);
             //给角色添加菜单权限表
             if (!empty($menusArr)) {
                 foreach ($menusArr as $menusArrVal) {
                     $AddAuthoritydata = array('group_id' => $roleid, 'menu_code' => $menusArrVal, 'operation_name' => $this->get_user_name(), 'operation_id' => $this->get_user_id(), 'status' => '1', 'create_time' => time());
                     BLL_Authority::insert_authority_info($AddAuthoritydata);
                 }
             }
             echo "<script>alert('修改成功!')</script>";
             $cUrl = $this->build_url("/permissions/rolelist", array());
             $this->response->redirect($cUrl);
             exit;
         } else {
             echo "<script>alert('无权限操作!')</script>";
         }
     }
     if (!empty($params['roleid'])) {
         $existmenu = BLL_Authority::get_all_menus_by_group_id($params['roleid']);
         $existmenuArr = $this->init_arr_exist_menus($existmenu);
         $this->setAttribute('existmenuArr', $existmenuArr);
     }
     //拼接树形菜单
     $menusparent = APF::get_instance()->get_config('big_menus', 'menus');
     $menusinfo = Bll_Authority::get_tree_menus();
     $menu_arr = array_merge($menusparent, $menusinfo);
     $dataarr = $this->Tree_Arr($menu_arr);
     $TreeArr = $this->unset_Invalid_data($dataarr['treeArr'][0]);
     $maxdeep = $dataarr['maxdeep'];
     //最小菜单级别数
     //传递值到页面
     $this->setAttribute('params', $params);
     $this->setAttribute('TreeArr', $TreeArr);
     $this->setAttribute('maxdeep', $maxdeep);
     return 'Permissions_RoleInfo';
 }
Exemplo n.º 4
0
 public function handle_request_internel()
 {
     $params = $this->getParam();
     if (!empty($params['groupid'])) {
         $groupinfo = BLL_Authority::get_group_info_by_id($params['groupid']);
         $this->setAttribute('groupinfo', $groupinfo);
         if (!empty($groupinfo['cou'])) {
             $userArr = BLL_Authority::get_user_info_by_id($groupinfo['id']);
             $this->setAttribute('userarr', $userArr);
         }
     }
     $this->setAttribute('params', $params);
     return 'Permissions_RoleCount';
 }
Exemplo n.º 5
0
 public function handle_request_internel()
 {
     $params = $this->getParam();
     $dataCount = BLL_Authority::get_user_info_by_user_name_or_bu_name_count($params['searchtype'], $params['searchText']);
     if ($dataCount > 0) {
         $page = isset($params['p']) ? (int) $params['p'] : 1;
         if ($this->request->is_post_method()) {
             $page = 1;
         }
         $page_size = 25;
         $show_num = 10;
         $dataArr = BLL_Authority::get_user_info_by_user_name_or_bu_name($params['searchtype'], $params['searchText'], $page, $page_size);
         $this->setAttribute('dataArr', $dataArr);
         $m_url = $this->build_url(__CLASS__);
         $this->set_multipage($page, $page_size, $dataCount, $m_url, $show_num, $params);
     }
     $this->setAttribute('userid', $this->get_user_id());
     $this->setAttribute('username', $this->get_user_name());
     $this->setAttribute('params', $params);
     $this->setAttribute('datacount', $dataCount);
     return 'Permissions_UserList';
 }
Exemplo n.º 6
0
 /**
  * 检查登录者信息是否保存,不保存则保存值数据库中
  */
 private function _check_user_info($userId)
 {
     //添加登陆者的信息到user_info表
     if (!empty($userId)) {
         $IsExite = BLL_Authority::get_user_Info_by_user_id($userId, '');
         $getuserinfo = $this->get_user_info();
         if (empty($IsExite)) {
             $IsExite = array('user_id' => $getuserinfo['user_id'], 'user_name' => $getuserinfo['name'], 'bu_id' => $getuserinfo['bu_id'], 'bu_name' => $getuserinfo['department_name'], 'level' => 0, 'operation_name' => $this->get_user_name(), 'operation_id' => 0, 'status' => 1, 'create_time' => time());
             Bll_Authority::insert_user_info_data_row($IsExite);
         } else {
             //存在信息不一样,直接更新
             if ($IsExite['bu_id'] != $getuserinfo['bu_id'] || $IsExite['bu_name'] != $getuserinfo['department_name']) {
                 $data = array('bu_id' => $getuserinfo['bu_id'], 'bu_name' => $getuserinfo['department_name']);
                 $whereArr = array('user_id' => $getuserinfo['user_id']);
                 Bll_Authority::update_user_info($data, $whereArr);
             }
         }
         /*有些optools功能迁移到cms,所以mid保存,以便写入操作日志时调用*/
         if (empty($IsExite['operation_id'])) {
             $userName = $this->get_user_name();
             $ajkAdminManager = Dao_AjkAdminManager::get_admin_manager_by_userName($userName);
             if ($ajkAdminManager) {
                 $data = array('operation_id' => $ajkAdminManager[0]['MId']);
                 $whereArr = array('user_id' => $getuserinfo['user_id']);
                 Bll_Authority::update_user_info($data, $whereArr);
                 $this->mid = $IsExite['operation_id'] = $ajkAdminManager[0]['MId'];
             }
         } else {
             $this->mid = $IsExite['operation_id'];
         }
         $this->_userInfo = $IsExite['status'] == 1 ? $IsExite : array();
     }
 }