40 lines
1.0 KiB
Python
40 lines
1.0 KiB
Python
import datetime
|
||
import uuid
|
||
|
||
import pydantic
|
||
|
||
|
||
class PlacementViewsHistoryOutput(pydantic.BaseModel):
|
||
"""История просмотров placement."""
|
||
|
||
id: uuid.UUID
|
||
placement_id: uuid.UUID
|
||
views_count: int
|
||
fetched_at: datetime.datetime
|
||
created_at: datetime.datetime
|
||
|
||
|
||
class GetViewsHistoryInput(pydantic.BaseModel):
|
||
"""Получить историю просмотров для закупа."""
|
||
|
||
placement_id: uuid.UUID
|
||
user_id: uuid.UUID
|
||
workspace_id: uuid.UUID
|
||
from_date: datetime.datetime | None = None # Фильтр: с какой даты
|
||
to_date: datetime.datetime | None = None # Фильтр: по какую дату
|
||
|
||
|
||
class GetViewsHistoryOutput(pydantic.BaseModel):
|
||
"""История просмотров."""
|
||
|
||
histories: list[PlacementViewsHistoryOutput]
|
||
|
||
|
||
class UpdateViewsManuallyInput(pydantic.BaseModel):
|
||
"""Ручное обновление просмотров."""
|
||
|
||
placement_id: uuid.UUID
|
||
user_id: uuid.UUID
|
||
workspace_id: uuid.UUID
|
||
views_count: int
|