sys_user_dto.py 1009 B

12345678910111213141516171819202122232425262728293031
  1. from typing import Optional
  2. from pydantic import Field
  3. from domain.dtos.base_dto import DtoBase
  4. class SysUserBaseDto(DtoBase):
  5. nick_name: Optional[str] = Field(None, title="昵称", max_length=100)
  6. phone: Optional[str] = Field(None, title="手机号", max_length=20)
  7. email: Optional[str] = Field(None, title="邮箱", max_length=100)
  8. sex: Optional[int] = Field(0, title="性别", ge=0, le=2)
  9. class Config:
  10. from_attributes = True
  11. class SysUserDto(SysUserBaseDto):
  12. id: int = Field(..., title="用户ID", gt=0)
  13. username: str = Field(..., title="用户名", max_length=30)
  14. password: Optional[str] = Field(None, title="密码", max_length=100)
  15. is_lock: int = Field(0, title="是否锁定", ge=0, le=1)
  16. class SysUserCreateDto(SysUserBaseDto):
  17. username: str = Field(..., title="用户名", max_length=30)
  18. password: str = Field(..., title="密码", max_length=100)
  19. class SysUserUpdateDto(SysUserBaseDto):
  20. id: int = Field(..., title="用户ID", gt=0)