2023-08-02 10:18:36 +08:00
|
|
|
from datetime import datetime, date
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from typing import Optional, List
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserInfo(BaseModel):
|
2023-08-02 20:19:16 +08:00
|
|
|
id: Optional[str] = None
|
|
|
|
email: Optional[str] = None
|
|
|
|
phone: Optional[str] = None
|
|
|
|
company_name: Optional[str] = None
|
|
|
|
passwd: Optional[str] = None
|
|
|
|
credit: Optional[str] = None
|
|
|
|
verified: Optional[bool] = None
|
|
|
|
create_time: Optional[datetime] = None
|
2023-08-02 10:18:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserAddInfo(BaseModel):
|
2023-08-02 20:19:16 +08:00
|
|
|
email: Optional[str] = None
|
|
|
|
phone: Optional[str] = None
|
|
|
|
company_name: Optional[str] = None
|
|
|
|
passwd: Optional[str] = None
|
|
|
|
credit: Optional[str] = None
|
|
|
|
verified: Optional[bool] = None
|
2023-08-02 10:18:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserRegisterReq(CompanyUserAddInfo):
|
|
|
|
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):
|
2023-08-02 20:19:16 +08:00
|
|
|
id: Optional[str] = None
|
|
|
|
email: Optional[str] = None
|
|
|
|
company_name: Optional[str] = None
|
|
|
|
phone: Optional[str] = None
|
2023-08-02 10:18:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserAddReq(CompanyUserAddInfo):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserAddRes(CompanyUserInfo):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserUpdateInfo(CompanyUserInfo):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserUpdateReq(CompanyUserUpdateInfo):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserUpdateRes(CompanyUserInfo):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
2023-08-02 19:48:51 +08:00
|
|
|
class CompanyUserQuery(CompanyUserInfo):
|
2023-08-02 20:19:16 +08:00
|
|
|
page: Optional[int] = None
|
|
|
|
page_size: Optional[int] = None
|
2023-08-02 10:18:36 +08:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserQueryReq(CompanyUserQuery):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserGetReq(BaseModel):
|
|
|
|
id: str
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserGetRes(CompanyUserInfo):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserQueryRes(BaseModel):
|
|
|
|
count: int
|
|
|
|
items: List[CompanyUserInfo]
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyUserDeleteReq(BaseModel):
|
|
|
|
id: str
|
|
|
|
|
|
|
|
|
|
|
|
class LoginByPasswdReq(BaseModel):
|
|
|
|
email: str
|
|
|
|
passwd: str
|
|
|
|
|
|
|
|
|
|
|
|
class LoginByPasswdRes(BaseModel):
|
|
|
|
token: str
|
|
|
|
#######################
|