b2c20ec43d
- 新增微信告警服务(wechat_service)和告警任务(alert_tasks) - 新增 WebSocket 实时推送端点 - 新增监控管理模块(monitor) - 增强统计仪表板:趋势图、区域分布、光功率历史 - 设备管理:添加坐标信息、标签系统、复合索引优化 - 前端:重构Dashboard/Charts页面,新增业务组件 - 新增5个数据库迁移(坐标、复合索引、标签、光功率历史、显示名) - 更新部署配置和脚本 - 新增测试框架基础结构
32 lines
756 B
Python
32 lines
756 B
Python
"""用户相关 Schema"""
|
|
from pydantic import BaseModel
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
|
|
|
|
class UserListItem(BaseModel):
|
|
id: int
|
|
username: str
|
|
display_name: Optional[str] = None
|
|
email: Optional[str] = None
|
|
role: str
|
|
assigned_area: Optional[str] = None
|
|
assigned_school: Optional[str] = None
|
|
is_active: bool
|
|
last_login: Optional[datetime] = None
|
|
created_at: Optional[datetime] = None
|
|
|
|
class Config:
|
|
from_attributes = True
|
|
|
|
|
|
class UserListResponse(BaseModel):
|
|
total: int
|
|
items: list[UserListItem]
|
|
|
|
|
|
class UserRoleUpdate(BaseModel):
|
|
role: str # admin / area_admin / school_admin / user
|
|
assigned_area: Optional[str] = None
|
|
assigned_school: Optional[str] = None
|