Files
FastapiAdmin/backend/app/core/base_schema.py
T
zhangtao 21097b3e99 refactor: 移除AI助手和令牌管理相关功能
移除前端AI助手组件及相关API、状态管理
移除后端令牌管理模块的模型、控制器、服务和路由
清理不再使用的依赖项和导入
更新前端设置和全局类型定义
简化用户管理界面操作逻辑
移除租户相关字段和模型继承
2025-12-26 00:48:40 +08:00

58 lines
2.2 KiB
Python

# -*- coding: utf-8 -*-
from pydantic import BaseModel, ConfigDict, Field
from app.core.validator import DateTimeStr
class CommonSchema(BaseModel):
"""通用信息模型"""
model_config = ConfigDict(from_attributes=True)
id: int = Field(description="编号ID")
name: str = Field(description="名称")
class BaseSchema(BaseModel):
"""通用输出模型,包含基础字段和审计字段"""
model_config = ConfigDict(from_attributes=True)
id: int | None = Field(default=None, description="主键ID")
uuid: str | None = Field(default=None, description="UUID")
status: str = Field(default="0", description="状态")
description: str | None = Field(default=None, description="描述")
created_time: DateTimeStr | None = Field(default=None, description="创建时间")
updated_time: DateTimeStr | None = Field(default=None, description="更新时间")
class UserBySchema(BaseModel):
"""通用创建模型,包含基础字段和审计字段"""
model_config = ConfigDict(from_attributes=True)
created_id: int | None = Field(default=None, description="创建人ID")
created_by: CommonSchema | None = Field(default=None, description="创建人信息")
updated_id: int | None = Field(default=None, description="更新人ID")
updated_by: CommonSchema | None = Field(default=None, description="更新人信息")
class BatchSetAvailable(BaseModel):
"""批量设置可用状态的请求模型"""
ids: list[int] = Field(default_factory=list, description="ID列表")
status: str = Field(default="0", description="是否可用")
class UploadResponseSchema(BaseModel):
"""上传响应模型"""
model_config = ConfigDict(from_attributes=True)
file_path: str | None = Field(default=None, description='新文件映射路径')
file_name: str | None = Field(default=None, description='新文件名称')
origin_name: str | None = Field(default=None, description='原文件名称')
file_url: str | None = Field(default=None, description='新文件访问地址')
class DownloadFileSchema(BaseModel):
"""下载文件模型"""
file_path: str = Field(..., description='新文件映射路径')
file_name: str = Field(..., description='新文件名称')