chore: 批量整理代码格式与优化细节

- 修复多处代码缩进、换行不规范问题
- 调整部分配置注释与字符串格式对齐
- 优化导入语句与多行表达式的排版
- 统一枚举、模型字段的注释风格
- 调整部分校验逻辑与提示文案
- 重构部分长函数参数与查询语句格式
This commit is contained in:
zhangtao
2026-06-02 08:19:10 +08:00
parent c0733d9861
commit 290728d9d2
98 changed files with 4884 additions and 1764 deletions
+37 -5
View File
@@ -1,31 +1,52 @@
import re
from dataclasses import dataclass
from typing import Any
from fastapi import Query
from pydantic import BaseModel, ConfigDict, Field
from pydantic import BaseModel, ConfigDict, Field, field_validator
from app.core.validator import DateTimeStr
class ChatQuerySchema(BaseModel):
"""WebSocket聊天查询模型"""
message: str = Field(..., description="消息内容")
message: str = Field(..., min_length=1, description="消息内容")
session_id: str | None = Field(None, description="会话ID")
files: list[dict[str, Any]] | None = Field(None, description="文件信息")
class ChatSessionCreateSchema(BaseModel):
"""创建会话模型"""
title: str = Field(..., description="会话标题")
title: str = Field(..., min_length=1, max_length=200, description="会话标题")
@field_validator("title")
@classmethod
def validate_title(cls, v: str) -> str:
v = v.strip()
if len(v) < 1 or len(v) > 200:
raise ValueError("会话标题长度必须在1-200个字符之间")
return v
class ChatSessionUpdateSchema(BaseModel):
"""更新会话模型"""
title: str = Field(..., description="会话标题")
title: str = Field(..., min_length=1, max_length=200, description="会话标题")
@field_validator("title")
@classmethod
def validate_title(cls, v: str) -> str:
v = v.strip()
if len(v) < 1 or len(v) > 200:
raise ValueError("会话标题长度必须在1-200个字符之间")
return v
class ChatSessionMessageSchema(BaseModel):
"""会话消息模型"""
id: str = Field(..., description="消息ID")
role: str = Field(..., description="消息角色")
content: str = Field(..., description="消息内容")
@@ -37,6 +58,7 @@ class ChatSessionMessageSchema(BaseModel):
@dataclass
class ChatSessionQueryParam:
"""会话查询参数"""
def __init__(
self,
title: str | None = Query(None, description="会话标题"),
@@ -58,12 +80,22 @@ class ChatSessionQueryParam:
class AiChatRequestSchema(BaseModel):
"""AI 对话请求模型(非流式)"""
message: str = Field(..., description="用户消息内容")
message: str = Field(..., min_length=1, description="用户消息内容")
session_id: str | None = Field(None, description="会话ID,不传则创建新会话")
@field_validator("message")
@classmethod
def validate_message(cls, v: str) -> str:
v = v.strip()
if len(v) < 1:
raise ValueError("用户消息内容不能为空")
return v
class AiChatResponseSchema(BaseModel):
"""AI 对话响应模型(非流式)"""
response: str = Field(..., description="AI 回复内容")
session_id: str = Field(..., description="会话ID")
function_calls: list[dict[str, Any]] | None = Field(None, description="函数调用信息")