Spaces:
Sleeping
Sleeping
File size: 1,154 Bytes
86c402d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
"""
Модуль содержит класс для метаданных документа.
"""
from dataclasses import dataclass, field
from datetime import datetime
from typing import Any
@dataclass
class ParsedMeta:
"""
Метаданные документа.
"""
date: datetime | str = field(default_factory=datetime.now)
owner: str | None = None
source: str | None = None
status: str | None = None
note: dict | None = None
def to_dict(self) -> dict[str, Any]:
"""
Преобразует метаданные в словарь.
Returns:
dict[str, Any]: Словарное представление метаданных.
"""
date_value = self.date
# Конвертируем datetime в строку, если это объект datetime
if isinstance(self.date, datetime):
date_value = self.date.isoformat()
return {
'date': date_value,
'owner': self.owner,
'source': self.source,
'status': self.status,
'note': self.note,
} |