def group_list(appname, page=0, page_size=PAGE_SIZE): ''' list api for show group list. Request URL: /auth/group/list Http Method: GET Parameters : None Return : { "status":0 "data":{ "items":[ { "_id":"2", "group_name":"admin", "permission_list":[19,20,21,22] }, { "_id":4, "group_name":"translator", "permission_list":[22,23] } ] } } ''' cond = {} fields = {"_id": 1, "group_name": 1} sort = [("_id", 1)] group_cursor = Group.find_group(appname, cond, fields) if sort is not None: group_cursor = group_cursor.sort(sort) group_cursor = group_cursor.skip( page * page_size).limit(page_size) total = Group.find_group(appname, cond).count() groups = [] for item in group_cursor: item["id"] = item.pop("_id") groups.append(item) data = {} data.setdefault("items", groups) data.setdefault("total", total) return json_response_ok(data)
def get_role_display_data(appname): sort = [("last_modified", -1)] fields = {"_id": 1, "group_name": 1} info = {"name": "role", "items": []} group_cursor = Group.find_group(appname, {}, fields).sort(sort) for role_item in group_cursor: role_dict = {"display_value": "", "value": ""} role_dict["value"] = role_item.get("_id") role_dict["display_value"] = role_item.get("group_name") info["items"].append(role_dict) return info