Исходный код cdek.apps.models.work_time

from __future__ import annotations

from datetime import date as Date

from pydantic import BaseModel, Field, field_serializer


[документация] class WorkTime(BaseModel): day: int = Field(..., description="Порядковый номер дня начиная с единицы") time: str = Field(..., max_length=255, description="Период работы в эти дни")
[документация] class WorkTimeException(BaseModel): date_start: Date = Field(..., description="Дата начала исключения в работе офиса") date_end: Date = Field(..., description="Дата окончания исключения в работе офиса") time_start: str | None = Field( None, description="Время начала работы в указанную дату" ) time_end: str | None = Field( None, description="Время окончания работы в указанную дату" ) is_working: bool = Field( ..., description="Признак рабочего/нерабочего дня в указанную дату" )
[документация] @field_serializer("date_start") def serialize_date_start(self, date_start: Date) -> str: """Представить дату начала исключения в формате ISO""" return date_start.strftime("%Y-%m-%d")
[документация] @field_serializer("date_end") def serialize_date_end(self, date_end: Date) -> str: """Представить дату окончания исключения в формате ISO""" return date_end.strftime("%Y-%m-%d")