30 lines
924 B
Python
30 lines
924 B
Python
"""Кастомные исключения для приложения"""
|
||
|
||
|
||
class AppException(Exception):
|
||
"""Базовое исключение приложения"""
|
||
def __init__(self, message: str, details: dict = None):
|
||
self.message = message
|
||
self.details = details or {}
|
||
super().__init__(self.message)
|
||
|
||
|
||
class CallEventAlreadyExistsError(AppException):
|
||
"""Событие звонка с таким call_session_id уже существует"""
|
||
def __init__(self, call_session_id: int):
|
||
super().__init__(
|
||
message=f"Call event with session_id {call_session_id} already exists",
|
||
details={"call_session_id": call_session_id}
|
||
)
|
||
|
||
|
||
class DatabaseError(AppException):
|
||
"""Ошибка работы с базой данных"""
|
||
pass
|
||
|
||
|
||
class ValidationError(AppException):
|
||
"""Ошибка валидации данных"""
|
||
pass
|
||
|