/** * 角色列表显示 */ public function ListRole($f3) { // 权限检查 $this->requirePrivilege('manage_account_role_listrole'); global $smarty; $metaRoleService = new MetaRoleService(); $smarty->assign('roleArray', $metaRoleService->fetchRoleArray()); out_display: $smarty->display('account_role_listrole.tpl'); }
public function ListRole($f3) { // 检查缓存 $cacheKey = md5(__NAMESPACE__ . '\\' . __CLASS__ . '\\' . __METHOD__); $roleArray = $f3->get($cacheKey); if (!empty($roleArray)) { goto out; } $metaRoleService = new MetaRoleService(); $roleArray = $metaRoleService->fetchRoleArray(); $f3->set($cacheKey, $roleArray, 300); //缓存 5 分钟 out: Ajax::header(); echo Ajax::buildResult(null, null, $roleArray); }
/** * 管理员列表显示 */ public function ListUser($f3) { // 权限检查 $this->requirePrivilege('manage_account_admin_listuser'); global $smarty; // 参数验证 $validator = new Validator($f3->get('GET')); $pageNo = $validator->digits()->min(0)->validate('pageNo'); $pageSize = $validator->digits()->min(0)->validate('pageSize'); //查询条件 $formQuery = array(); $formQuery['user_name'] = $validator->validate('user_name'); $formQuery['user_real_name'] = $validator->validate('user_real_name'); $formQuery['user_desc'] = $validator->validate('user_desc'); $formQuery['role_id'] = $validator->digits()->validate('role_id'); // 设置缺省值 $pageNo = isset($pageNo) && $pageNo > 0 ? $pageNo : 0; $pageSize = isset($pageSize) && $pageSize > 0 ? $pageSize : 10; if (!$this->validate($validator)) { goto out_display; } // 建立查询条件 $condArray = QueryBuilder::buildQueryCondArray($formQuery); // 查询管理员列表 $adminUserService = new AdminUserService(); $totalCount = $adminUserService->countAdminArray($condArray); if ($totalCount <= 0) { // 没用户,可以直接退出了 goto out_display; } // 页数超过最大值,返回第一页 if ($pageNo * $pageSize >= $totalCount) { RouteHelper::reRoute($this, '/Account/Admin/ListUser'); } // 管理员列表 $adminUserArray = $adminUserService->fetchAdminArray($condArray, $pageNo * $pageSize, $pageSize); // 取得角色列表 $metaRoleService = new MetaRoleService(); $roleArray = $metaRoleService->fetchRoleArray(); // 建立 roleId --> role 的倒查表 $roleIdToRoleArray = array(); foreach ($roleArray as $roleItem) { $roleIdToRoleArray[$roleItem['meta_id']] = $roleItem; } // 给管理员添加角色信息 foreach ($adminUserArray as &$adminUser) { if (array_key_exists($adminUser['role_id'], $roleIdToRoleArray)) { $adminUser['role_name'] = $roleIdToRoleArray[$adminUser['role_id']]['meta_name']; } else { $adminUser['role_name'] = ''; } } unset($adminUser); // 给模板赋值 $smarty->assign('totalCount', $totalCount); $smarty->assign('pageNo', $pageNo); $smarty->assign('pageSize', $pageSize); $smarty->assign('adminUserArray', $adminUserArray); out_display: $smarty->display('account_admin_listuser.tpl'); }