from pydantic import BaseModel from typing import Optional from .base_schema import BaseResponse #---------------------------------用户创建---------------------------------- #用户创建请求类 class UserCrateRequest(BaseModel): open_id: str username: str avatar_id: str tags: str persona: str #用户创建返回类 class UserCrateData(BaseModel): user_id : int createdAt: str #用户创建响应类 class UserCrateResponse(BaseResponse): data: Optional[UserCrateData] #--------------------------------------------------------------------------- #---------------------------------用户更新----------------------------------- #用户更新请求类 class UserUpdateRequest(BaseModel): open_id: str username: str avatar_id: str tags: str persona: str #用户更新返回类 class UserUpdateData(BaseModel): updatedAt: str #用户更新响应类 class UserUpdateResponse(BaseResponse): data: Optional[UserUpdateData] #---------------------------------------------------------------------------- #---------------------------------用户查询------------------------------------ #用户查询返回类 class UserQueryData(BaseModel): open_id: str username: str avatar_id: str tags: str persona: str #用户查询响应类 class UserQueryResponse(BaseResponse): data: Optional[UserQueryData] #----------------------------------------------------------------------------- #---------------------------------用户删除------------------------------------ #用户删除返回类 class UserDeleteData(BaseModel): deletedAt: str #用户删除响应类 class UserDeleteResponse(BaseResponse): data: Optional[UserDeleteData] #----------------------------------------------------------------------------- #---------------------------------硬件绑定------------------------------------- class HardwareBindRequest(BaseModel): mac:str user_id:int firmware:str model:str class HardwareBindData(BaseModel): hardware_id: int bindedAt: str class HardwareBindResponse(BaseResponse): data: Optional[HardwareBindData] #----------------------------------------------------------------------------- #---------------------------------硬件解绑------------------------------------- class HardwareUnbindData(BaseModel): unbindedAt: str class HardwareUnbindResponse(BaseResponse): data: Optional[HardwareUnbindData] #------------------------------------------------------------------------------ #---------------------------------硬件换绑-------------------------------------- class HardwareChangeBindRequest(BaseModel): user_id:int class HardwareChangeBindData(BaseModel): bindChangedAt: str class HardwareChangeBindResponse(BaseResponse): data: Optional[HardwareChangeBindData] #------------------------------------------------------------------------------ #-------------------------------硬件信息更新------------------------------------ class HardwareUpdateRequest(BaseModel): mac:str firmware:str model:str class HardwareUpdateData(BaseModel): updatedAt: str class HardwareUpdateResponse(BaseResponse): data: Optional[HardwareUpdateData] #------------------------------------------------------------------------------ #--------------------------------硬件查询--------------------------------------- class HardwareQueryData(BaseModel): user_id:int mac:str firmware:str model:str class HardwareQueryResponse(BaseResponse): data: Optional[HardwareQueryData] #------------------------------------------------------------------------------ #-------------------------------用户音频上传------------------------------------- class AudioUploadData(BaseModel): audio_id: int uploadedAt: str class AudioUploadResponse(BaseResponse): data: Optional[AudioUploadData] #------------------------------------------------------------------------------- #-------------------------------用户音频修改------------------------------------- class AudioUpdateData(BaseModel): updatedAt: str class AudioUpdateResponse(BaseResponse): data: Optional[AudioUpdateData] #------------------------------------------------------------------------------- #-------------------------------用户音频删除------------------------------------- class AudioDeleteData(BaseModel): deletedAt: str class AudioDeleteResponse(BaseResponse): data: Optional[AudioDeleteData] #------------------------------------------------------------------------------- #-------------------------------用户音频绑定------------------------------------- class AudioBindRequest(BaseModel): audio_id: int user_id: int class AudioBindData(BaseModel): bindedAt: str class AudioBindResponse(BaseResponse): data: Optional[AudioBindData] #-------------------------------------------------------------------------------