from pydantic import BaseModel, Field from typing import Optional class SendEmailRequest(BaseModel): email: str = Field(..., description="邮箱地址") subject: Optional[str] = Field(None, description="邮件主题") body: str = Field(..., description="文案内容") file_url: Optional[str] = Field(None, description="附件URL") class SendEmailResponse(BaseModel): status: str log_id: Optional[int] = None error: Optional[str] = None class EmailSendLogOut(BaseModel): id: int email: str subject: Optional[str] body_summary: Optional[str] file_name: Optional[str] file_url: Optional[str] status: str