from datetime import datetime, date from pydantic import BaseModel from typing import Optional, List class CompanyUserInfo(BaseModel): id: Optional[str] email: Optional[str] phone: Optional[str] company_name: Optional[str] passwd: Optional[str] verified: Optional[bool] create_time: Optional[datetime] class CompanyUserAddInfo(BaseModel): email: Optional[str] phone: Optional[str] company_name: Optional[str] passwd: Optional[str] verified: Optional[bool] 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): id: Optional[str] email: Optional[str] company_name: Optional[str] phone: Optional[str] class CompanyUserAddReq(CompanyUserAddInfo): pass class CompanyUserAddRes(CompanyUserInfo): pass class CompanyUserUpdateInfo(CompanyUserInfo): pass class CompanyUserUpdateReq(CompanyUserUpdateInfo): pass class CompanyUserUpdateRes(CompanyUserInfo): pass class CompanyUserQuery(CompanyUserInfo): page: Optional[int] page_size: Optional[int] 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 #######################