dingdanquanliucheng/backend/app/schemas/system.py
taiyi 9b32afdbb4 为后端全部 86 个 Python 文件添加中文注释
覆盖所有模块:
- api 层:17 个路由文件,每个接口标注用途、参数、返回值、权限
- services 层:18 个服务文件,每个方法标注作用、参数、返回值、调用方
- repositories 层:13 个仓储文件,每个方法标注查询逻辑和被调用方
- schemas 层:11 个请求/响应体文件,每个字段标注业务含义
- core 层:config、security、exceptions、responses、error_codes
- models 层:19 个 ORM 模型类,每个表标注业务含义和关联关系
- scripts:bootstrap_data、smoke_check
- migrations:env.py 和版本迁移文件

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-30 07:23:33 +08:00

156 lines
3.3 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""
系统管理模块请求模型
定义系统管理相关的请求体数据模型,供 system 路由使用。
包含用户管理、角色管理和菜单管理三个子模块的 CRUD 操作。
"""
from pydantic import BaseModel
class CreateUserRequest(BaseModel):
"""创建用户请求体。被 POST /api/system/users 路由使用。"""
username: str
"""登录用户名"""
password: str
"""登录密码"""
real_name: str
"""真实姓名"""
mobile: str | None = None
"""手机号,可选"""
role_id: int
"""关联角色 ID"""
status: int = 1
"""状态1-启用0-禁用"""
class UpdateUserRequest(BaseModel):
"""更新用户请求体(不含用户名和密码)。被 PUT /api/system/users/{id} 路由使用。"""
real_name: str
"""真实姓名"""
mobile: str | None = None
"""手机号"""
role_id: int
"""关联角色 ID"""
status: int = 1
"""状态1-启用0-禁用"""
class ResetPasswordRequest(BaseModel):
"""重置密码请求体。被 POST /api/system/users/{id}/reset-password 路由使用。"""
new_password: str
"""新密码"""
class ChangeUserStatusRequest(BaseModel):
"""切换用户状态请求体。被 POST /api/system/users/{id}/status 路由使用。"""
status: int
"""目标状态1-启用0-禁用"""
class CreateRoleRequest(BaseModel):
"""创建角色请求体。被 POST /api/system/roles 路由使用。"""
role_name: str
"""角色名称"""
role_code: str
"""角色编码(唯一标识,如 admin、sales"""
status: int = 1
"""状态1-启用0-禁用"""
remark: str | None = None
"""备注信息"""
class UpdateRoleRequest(BaseModel):
"""更新角色请求体。被 PUT /api/system/roles/{id} 路由使用。"""
role_name: str
"""角色名称"""
status: int = 1
"""状态1-启用0-禁用"""
remark: str | None = None
"""备注信息"""
class CreateMenuRequest(BaseModel):
"""创建菜单请求体。被 POST /api/system/menus 路由使用。"""
parent_id: int = 0
"""父菜单 ID0 表示顶级菜单"""
menu_name: str
"""菜单名称"""
menu_path: str = ""
"""菜单路由路径"""
menu_type: str = "page"
"""菜单类型page-页面button-按钮权限"""
permission_code: str
"""权限编码"""
icon: str | None = None
"""图标标识"""
sort_no: int = 0
"""排序号,数值越小越靠前"""
status: int = 1
"""状态1-启用0-禁用"""
class UpdateMenuRequest(BaseModel):
"""更新菜单请求体。被 PUT /api/system/menus/{id} 路由使用。"""
parent_id: int = 0
"""父菜单 ID"""
menu_name: str
"""菜单名称"""
menu_path: str = ""
"""菜单路由路径"""
menu_type: str = "page"
"""菜单类型page-页面button-按钮权限"""
permission_code: str
"""权限编码"""
icon: str | None = None
"""图标标识"""
sort_no: int = 0
"""排序号"""
status: int = 1
"""状态1-启用0-禁用"""
class AssignRoleMenusRequest(BaseModel):
"""为角色分配菜单权限请求体。被 POST /api/system/roles/{id}/menus 路由使用。"""
menu_ids: list[int] = []
"""菜单 ID 列表"""
permission_codes: list[str] = []
"""权限编码列表"""