def admin_add_user_permission(uid: int, permission: str): """ 给用户添加个人权限 """ user: User = db.session.query(User).filter(User.id == uid).one() current_permissions = user.permissions user.permissions = [*current_permissions, permission] db.session.commit() permission_manager.refresh_user(user.id) return make_json_response(0, message="保存成功")
def admin_remove_user_permission(uid: int, index: int): """ 删除某用户的某条个人权限 """ user: User = db.session.query(User).filter(User.id == uid).one() current_permissions = user.permissions user.permissions = [ x for i, x in enumerate(current_permissions) if i != index ] db.session.commit() permission_manager.refresh_user(user.id) return make_json_response(0, message="删除成功")
def admin_get_user_permissions(): """ 获取所有有个人权限的用户 List[datatypes.admin.UserPermission] """ from common.datatypes.admin import UserPermission result: List[UserPermission] = [] for user in db.session.query(User.id, User.username, User.permissions).filter(User.permissions != []).all(): result.append(UserPermission( uid=user.id, username=user.username, permissions=user.permissions )) return make_json_response(0, data=result)