| 12345678910111213141516171819202122232425262728293031323334353637 |
- from typing import Optional
- from pydantic import Field
- from domain.dtos.base_dto import DtoBase
- class SysMenuBaseDto(DtoBase):
- menu_name: str = Field(..., title="菜单名称", max_length=30)
- parent_id: int = Field(0, title="父菜单ID", ge=0)
- order_num: int = Field(0, title="显示顺序", ge=0)
- path: Optional[str] = Field(None, title="路由地址", max_length=200)
- component: Optional[str] = Field(None, title="组件路径", max_length=100)
- query: Optional[str] = Field(None, title="路由参数", max_length=100)
- is_frame: int = Field(0, title="是否外链", ge=0, le=1)
- is_cache: int = Field(0, title="是否缓存", ge=0, le=1)
- menu_type: str = Field("M", title="菜单类型", min_length=1, max_length=1)
- visible: int = Field(0, title="菜单状态", ge=0, le=1)
- perms: Optional[str] = Field(None, title="权限标识", max_length=100)
- class Config:
- from_attributes = True
- class SysMenuDto(SysMenuBaseDto):
- id: int = Field(..., title="菜单ID", gt=0)
- class SysMenuCreateDto(SysMenuBaseDto):
- menu_name: str = Field(..., title="菜单名称", max_length=30)
- parent_id: int = Field(0, title="父菜单ID", ge=0)
- menu_type: str = Field(..., title="菜单类型", min_length=1, max_length=1)
- class SysMenuUpdateDto(SysMenuBaseDto):
- id: int = Field(..., title="菜单ID", gt=0)
- parent_id: Optional[int] = Field(None, title="父菜单ID", ge=0)
|