diff --git a/src/domain/exceptions.py b/src/domain/exceptions.py index 3320bdc..9467d41 100644 --- a/src/domain/exceptions.py +++ b/src/domain/exceptions.py @@ -30,31 +30,34 @@ class AnalysisException(DomainException): class InsufficientDataException(AnalysisException): """当数据不足以进行分析时抛出。""" - def __init__(self, message: str = "数据不足,无法进行分析"): + def __init__(self, message: str = "Không đủ dữ liệu để phân tích"): super().__init__(message, "INSUFFICIENT_DATA") class AnalysisTimeoutException(AnalysisException): """当分析超时时抛出。""" - def __init__(self, message: str = "分析超时"): + def __init__(self, message: str = "Phân tích bị timeout"): super().__init__(message, "ANALYSIS_TIMEOUT") class LLMException(AnalysisException): """当 LLM API 调用失败时抛出。""" - def __init__(self, message: str = "LLM API 调用失败", provider: str = ""): + def __init__(self, message: str = "Gọi API LLM thất bại", provider: str = ""): self.provider = provider super().__init__( - f"{message} (提供商: {provider})" if provider else message, "LLM_ERROR" + f"{message} (nhà cung cấp: {provider})" if provider else message, + "LLM_ERROR", ) class LLMRateLimitException(LLMException): """当 LLM API 速率限制超出时抛出。""" - def __init__(self, message: str = "LLM 速率限制超出", provider: str = ""): + def __init__( + self, message: str = "Vượt quá giới hạn tốc độ LLM", provider: str = "" + ): super().__init__(message, provider) self.code = "LLM_RATE_LIMIT" @@ -62,7 +65,7 @@ class LLMRateLimitException(LLMException): class LLMQuotaExceededException(LLMException): """当 LLM API 配额超出时抛出。""" - def __init__(self, message: str = "LLM 配额超出", provider: str = ""): + def __init__(self, message: str = "Vượt quá hạn ngạch LLM", provider: str = ""): super().__init__(message, provider) self.code = "LLM_QUOTA_EXCEEDED" @@ -85,21 +88,23 @@ class PlatformNotSupportedException(PlatformException): def __init__(self, platform: str): super().__init__( - f"平台 '{platform}' 不被支持", platform, "PLATFORM_NOT_SUPPORTED" + f"Nền tảng '{platform}' không được hỗ trợ", + platform, + "PLATFORM_NOT_SUPPORTED", ) class PlatformConnectionException(PlatformException): """当连接平台失败时抛出。""" - def __init__(self, message: str = "连接平台失败", platform: str = ""): + def __init__(self, message: str = "Kết nối nền tảng thất bại", platform: str = ""): super().__init__(message, platform, "PLATFORM_CONNECTION_ERROR") class PlatformAPIException(PlatformException): """当平台 API 调用失败时抛出。""" - def __init__(self, message: str = "平台 API 调用失败", platform: str = ""): + def __init__(self, message: str = "Gọi API nền tảng thất bại", platform: str = ""): super().__init__(message, platform, "PLATFORM_API_ERROR") @@ -107,11 +112,14 @@ class MessageFetchException(PlatformException): """当获取消息失败时抛出。""" def __init__( - self, message: str = "获取消息失败", platform: str = "", group_id: str = "" + self, + message: str = "Lấy tin nhắn thất bại", + platform: str = "", + group_id: str = "", ): self.group_id = group_id super().__init__( - f"{message} (群组: {group_id})" if group_id else message, + f"{message} (nhóm: {group_id})" if group_id else message, platform, "MESSAGE_FETCH_ERROR", ) @@ -121,11 +129,14 @@ class MessageSendException(PlatformException): """当发送消息失败时抛出。""" def __init__( - self, message: str = "发送消息失败", platform: str = "", group_id: str = "" + self, + message: str = "Gửi tin nhắn thất bại", + platform: str = "", + group_id: str = "", ): self.group_id = group_id super().__init__( - f"{message} (群组: {group_id})" if group_id else message, + f"{message} (nhóm: {group_id})" if group_id else message, platform, "MESSAGE_SEND_ERROR", ) @@ -146,7 +157,7 @@ class ConfigurationException(DomainException): class InvalidConfigurationException(ConfigurationException): """当配置无效时抛出。""" - def __init__(self, message: str = "无效的配置", key: str = ""): + def __init__(self, message: str = "Cấu hình không hợp lệ", key: str = ""): self.key = key super().__init__(f"{message}: {key}" if key else message, "INVALID_CONFIG") @@ -156,7 +167,7 @@ class MissingConfigurationException(ConfigurationException): def __init__(self, key: str): self.key = key - super().__init__(f"缺少必需配置: {key}", "MISSING_CONFIG") + super().__init__(f"Thiếu cấu hình bắt buộc: {key}", "MISSING_CONFIG") # ============================================================================ @@ -175,12 +186,15 @@ class DataNotFoundException(RepositoryException): """当请求的数据未找到时抛出。""" def __init__( - self, message: str = "数据未找到", entity_type: str = "", entity_id: str = "" + self, + message: str = "Không tìm thấy dữ liệu", + entity_type: str = "", + entity_id: str = "", ): self.entity_type = entity_type self.entity_id = entity_id super().__init__( - f"{entity_type} 未找到: {entity_id}" if entity_type else message, + f"Không tìm thấy {entity_type}: {entity_id}" if entity_type else message, "DATA_NOT_FOUND", ) @@ -188,7 +202,7 @@ class DataNotFoundException(RepositoryException): class DataPersistenceException(RepositoryException): """当数据持久化失败时抛出。""" - def __init__(self, message: str = "数据持久化失败"): + def __init__(self, message: str = "Lưu trữ dữ liệu thất bại"): super().__init__(message, "DATA_PERSISTENCE_ERROR") @@ -209,7 +223,9 @@ class TaskAlreadyScheduledException(SchedulingException): def __init__(self, task_id: str): self.task_id = task_id - super().__init__(f"任务已调度: {task_id}", "TASK_ALREADY_SCHEDULED") + super().__init__( + f"Tác vụ đã được lên lịch: {task_id}", "TASK_ALREADY_SCHEDULED" + ) class TaskNotFoundException(SchedulingException): @@ -217,7 +233,9 @@ class TaskNotFoundException(SchedulingException): def __init__(self, task_id: str): self.task_id = task_id - super().__init__(f"未找到已调度的任务: {task_id}", "TASK_NOT_FOUND") + super().__init__( + f"Không tìm thấy tác vụ đã lên lịch: {task_id}", "TASK_NOT_FOUND" + ) # ============================================================================ @@ -237,18 +255,22 @@ class InvalidGroupIdException(ValidationException): """当群组 ID 无效时抛出。""" def __init__(self, group_id: str): - super().__init__(f"无效的群组 ID: {group_id}", "group_id", "INVALID_GROUP_ID") + super().__init__( + f"ID nhóm không hợp lệ: {group_id}", "group_id", "INVALID_GROUP_ID" + ) class InvalidUserIdException(ValidationException): """当用户 ID 无效时抛出。""" def __init__(self, user_id: str): - super().__init__(f"无效的用户 ID: {user_id}", "user_id", "INVALID_USER_ID") + super().__init__( + f"ID người dùng không hợp lệ: {user_id}", "user_id", "INVALID_USER_ID" + ) class InvalidMessageException(ValidationException): """当消息格式无效时抛出。""" - def __init__(self, message: str = "无效的消息格式"): + def __init__(self, message: str = "Định dạng tin nhắn không hợp lệ"): super().__init__(message, "message", "INVALID_MESSAGE")