mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-09-21 04:46:26 +00:00
refactor: 重构前端组件和样式,添加AI助手功能 docs: 更新README文档,添加ruff代码检查说明 feat: 新增AI助手相关API和前端组件 chore: 更新.gitignore文件,添加ruff缓存配置 fix: 修复前端布局和设置相关的问题 perf: 优化代码结构和性能,移除冗余代码 test: 更新测试文件,移除编码声明 build: 更新依赖版本,调整requirements.txt
78 lines
2.7 KiB
Python
78 lines
2.7 KiB
Python
from pydantic import BaseModel, ConfigDict, Field
|
|
|
|
|
|
class CpuInfoSchema(BaseModel):
|
|
"""CPU信息模型"""
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
cpu_num: int = Field(description="CPU核心数")
|
|
used: float = Field(ge=0, le=100, description="CPU用户使用率(%)")
|
|
sys: float = Field(ge=0, le=100, description="CPU系统使用率(%)")
|
|
free: float = Field(ge=0, le=100, description="CPU空闲率(%)")
|
|
|
|
|
|
class MemoryInfoSchema(BaseModel):
|
|
"""内存信息模型"""
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
total: str = Field(description="内存总量")
|
|
used: str = Field(description="已用内存")
|
|
free: str = Field(description="剩余内存")
|
|
usage: float = Field(ge=0, le=100, description="使用率(%)")
|
|
|
|
|
|
class SysInfoSchema(BaseModel):
|
|
"""系统信息模型"""
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
computer_ip: str = Field(description="服务器IP")
|
|
computer_name: str = Field(description="服务器名称")
|
|
os_arch: str = Field(description="系统架构")
|
|
os_name: str = Field(description="操作系统")
|
|
user_dir: str = Field(description="项目路径")
|
|
|
|
|
|
class PyInfoSchema(BaseModel):
|
|
"""Python运行信息模型"""
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
name: str = Field(description="Python名称")
|
|
version: str = Field(description="Python版本")
|
|
start_time: str = Field(description="启动时间")
|
|
run_time: str = Field(description="运行时长")
|
|
home: str = Field(description="安装路径")
|
|
memory_used: str = Field(description="内存占用")
|
|
memory_usage: float = Field(ge=0, le=100, description="内存使用率(%)")
|
|
memory_total: str = Field(description="总内存")
|
|
memory_free: str = Field(description="剩余内存")
|
|
|
|
|
|
class DiskInfoSchema(BaseModel):
|
|
"""磁盘信息模型"""
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
dir_name: str = Field(description="磁盘路径")
|
|
sys_type_name: str = Field(description="文件系统类型")
|
|
type_name: str = Field(description="磁盘类型")
|
|
total: str = Field(description="总容量")
|
|
used: str = Field(description="已用容量")
|
|
free: str = Field(description="可用容量")
|
|
usage: float = Field(ge=0, le=100, description="使用率(%)")
|
|
|
|
|
|
class ServerMonitorSchema(BaseModel):
|
|
"""服务器监控信息模型"""
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
cpu: CpuInfoSchema = Field(description="CPU信息")
|
|
mem: MemoryInfoSchema = Field(description="内存信息")
|
|
py: PyInfoSchema = Field(description="Python运行信息")
|
|
sys: SysInfoSchema = Field(description="系统信息")
|
|
disks: list[DiskInfoSchema] = Field(default_factory=list, description="磁盘信息")
|