"""白板接口 DTO(文本记事本)。""" from __future__ import annotations from datetime import datetime from pydantic import BaseModel, Field class WhiteboardOut(BaseModel): """白板完整内容(GET /api/wb/{id} 与 WS init 帧)。""" board_id: str content: str = Field("", description="白板文本内容") version: int = Field(0, description="乐观锁版本号,每次编辑 +1") edit_count: int = Field(0, description="累计编辑次数") created_at: datetime updated_at: datetime model_config = {"from_attributes": True} class WhiteboardListItem(BaseModel): """管理页列表项。""" board_id: str edit_count: int created_at: datetime updated_at: datetime model_config = {"from_attributes": True} class WhiteboardListResponse(BaseModel): """管理页列表响应。""" total: int items: list[WhiteboardListItem]