rate-sys-template/Mods/User/InstitutionUser/Schemas.py

107 lines
1.9 KiB
Python

from datetime import datetime, date
from pydantic import BaseModel
from typing import Optional, List
class InstitutionUserInfo(BaseModel):
id: Optional[str]
email: Optional[str]
phone: Optional[str]
company_name: Optional[str]
passwd: Optional[str]
business_license: Optional[int]
verified: Optional[bool]
create_time: Optional[datetime]
class InstitutionUserAddInfo(BaseModel):
email: Optional[str]
phone: Optional[str]
company_name: Optional[str]
passwd: Optional[str]
verified: Optional[bool]
class InstitutionUserRegisterReq(InstitutionUserAddInfo):
email: str
email_verified_code: str
passwd: str
license_file_md: str
class LoginByEmailReq(BaseModel):
email: str
code: str
class LoginByEmailRes(BaseModel):
token: str
class GetEmailVerifyCode(BaseModel):
email: str
class GetUserInfoRes(BaseModel):
id: Optional[str]
email: Optional[str]
company_name: Optional[str]
phone: Optional[str]
class InstitutionUserAddReq(InstitutionUserAddInfo):
pass
class InstitutionUserAddRes(InstitutionUserInfo):
pass
class InstitutionUserUpdateInfo(InstitutionUserInfo):
pass
class InstitutionUserUpdateReq(InstitutionUserUpdateInfo):
pass
class InstitutionUserUpdateRes(InstitutionUserInfo):
pass
class InstitutionUserQuery(InstitutionUserInfo):
page: Optional[int]
page_size: Optional[int]
pass
class InstitutionUserQueryReq(InstitutionUserQuery):
pass
class InstitutionUserGetReq(BaseModel):
id: str
class InstitutionUserGetRes(InstitutionUserInfo):
pass
class InstitutionUserQueryRes(BaseModel):
count: int
items: List[InstitutionUserInfo]
class InstitutionUserDeleteReq(BaseModel):
id: str
class LoginByPasswdReq(BaseModel):
email: str
passwd: str
class LoginByPasswdRes(BaseModel):
token: str
#######################