from enum import unique, Enum from pydantic import BaseModel from typing import Union, Optional, List class LoginToAppReq(BaseModel): code: str class LoginToAppRes(BaseModel): email: str # registered: bool # token: str class GetUserInfoReq(BaseModel): code: str class DepartmentInfo(BaseModel): id: int belong: Optional[int] name: str class PostInfo(BaseModel): id: int belong: int name: str class GetUserInfoRes(BaseModel): email: Optional[str] post: Optional[str] post_list: Optional[List[PostInfo]] name: Optional[str] department: Optional[str] department_list: Optional[List[DepartmentInfo]] registered: Optional[bool] auth_data:Optional[str] class TokenData(BaseModel): email: str registered: bool auth_data: Union[str, None] department: Union[str, None] post: Union[str, None] class UserInfoChange(BaseModel): email: str name: Optional[str] post: Optional[str] department: Optional[str] registered: Optional[bool] class UserInfo(BaseModel): email: str name: str post: str department: str registered: bool class ChangeUserInfoReq(UserInfoChange): email_code: str class BindEmailReq(BaseModel): email: str = "xxxx@fecr.com.cn" email_code: str class EmailSendReqBody(BaseModel): email: str = "xxxx@fecr.com.cn" @unique class DepartmentTypeEnum(Enum): enum01 = "董监高" enum02 = "评级部门" enum03 = "业务部门" enum04 = "研发部门" enum05 = "职能部门" enum06 = "战略部门" enum07 = "子分公司" enum08 = "质量部门"