config_center/app/schemas/user.py
2025-03-03 22:28:34 +08:00

37 lines
884 B
Python

from pydantic import BaseModel, Field
from typing import Optional, List
from datetime import datetime
class UserBase(BaseModel):
username: str = Field(..., description="用户名")
class UserCreate(UserBase):
password: str = Field(..., description="密码")
role: Optional[str] = Field("user", description="用户角色")
class UserUpdate(BaseModel):
password: Optional[str] = Field(None, description="密码")
role: Optional[str] = Field(None, description="用户角色")
class UserInDB(UserBase):
user_id: int
role: str
created_at: datetime
class Config:
orm_mode = True
class User(UserInDB):
pass
class UserList(BaseModel):
users: List[User]
total: int
class Token(BaseModel):
access_token: str
token_type: str
class TokenData(BaseModel):
username: Optional[str] = None
role: Optional[str] = None