131 lines
2.4 KiB
Python
131 lines
2.4 KiB
Python
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]
|
|
manage_departments: 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]
|
|
manage_departments: Optional[str]
|
|
post: Union[str, None]
|
|
|
|
|
|
class UserInfoChange(BaseModel):
|
|
email: str
|
|
name: Optional[str]
|
|
post: Optional[str]
|
|
manage_departments: Optional[str]
|
|
department: Optional[str]
|
|
registered: Optional[bool]
|
|
|
|
|
|
class UserInfo(BaseModel):
|
|
email: str
|
|
name: str
|
|
post: str
|
|
manage_departments: Optional[str]
|
|
department: str
|
|
registered: bool
|
|
|
|
|
|
class UserFullInfo(BaseModel):
|
|
email: Optional[str]
|
|
post: Optional[str]
|
|
post_list: Optional[List[PostInfo]]
|
|
name: Optional[str]
|
|
department: Optional[str]
|
|
manage_departments: Optional[str]
|
|
department_list: Optional[List[DepartmentInfo]]
|
|
|
|
|
|
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"
|
|
|
|
|
|
class LoginByPhoneReq(BaseModel):
|
|
phone: str
|
|
code: str
|
|
|
|
|
|
class GetPhoneVerifyCodeReq(BaseModel):
|
|
phone: str
|
|
|
|
|
|
class GetUserByDepartmentReq(BaseModel):
|
|
departments: List[int]
|
|
|
|
|
|
class GetUserByDepartmentRes(BaseModel):
|
|
users: List[UserInfo]
|
|
|
|
|
|
class GetUserByDepartmentTypeRes(BaseModel):
|
|
users: List[UserFullInfo]
|
|
|
|
|
|
class GetUserByDepartmentTypeReq(BaseModel):
|
|
department_type: str
|
|
|
|
|
|
@unique
|
|
class DepartmentTypeEnum(Enum):
|
|
enum01 = "董监高"
|
|
enum02 = "评级部门"
|
|
enum03 = "业务部门"
|
|
enum04 = "研发部门"
|
|
enum05 = "职能部门"
|
|
enum06 = "战略部门"
|
|
enum07 = "子分公司"
|
|
enum08 = "质量部门"
|