加入权限判断

This commit is contained in:
liuwei
2025-04-09 14:56:27 +08:00
parent 44325de73c
commit b1b15524d9

View File

@@ -6,7 +6,7 @@ from typing import Callable, Dict, Any, Tuple, Union
from db.connection import DBConnectionManager from db.connection import DBConnectionManager
from db.points_db import PointsDBOperator, PointSource from db.points_db import PointsDBOperator, PointSource
from utils.robot_cmd.robot_command import Feature, PermissionStatus from utils.robot_cmd.robot_command import Feature, PermissionStatus, GroupBotManager
def points_reward_decorator(points_calculator: Union[int, Callable], source_type: str = "other", def points_reward_decorator(points_calculator: Union[int, Callable], source_type: str = "other",
@@ -28,8 +28,9 @@ def points_reward_decorator(points_calculator: Union[int, Callable], source_type
def wrapper(self, message: Dict[str, Any]) -> Tuple[bool, str]: def wrapper(self, message: Dict[str, Any]) -> Tuple[bool, str]:
# 检查权限 # 检查权限
roomid = message.get("roomid", "") roomid = message.get("roomid", "")
if feature and roomid and hasattr(self, 'gbm'):
if self.gbm.get_group_permission(roomid, feature) == PermissionStatus.DISABLED: if feature and roomid:
if GroupBotManager.get_group_permission(roomid, feature) == PermissionStatus.DISABLED:
return False, "没有权限" return False, "没有权限"
# 调用原始方法 # 调用原始方法
@@ -113,8 +114,8 @@ def plugin_points_cost(points: int, description: str = None, feature: Feature =
try: try:
# 检查权限 # 检查权限
roomid = message.get("roomid", "") roomid = message.get("roomid", "")
if feature and roomid and hasattr(self, 'gbm'): if feature and roomid:
if self.gbm.get_group_permission(roomid, feature) == PermissionStatus.DISABLED: if GroupBotManager.get_group_permission(roomid, feature) == PermissionStatus.DISABLED:
return False, "没有权限" return False, "没有权限"
# 获取消息信息 # 获取消息信息