135 lines
3.1 KiB
Python
135 lines
3.1 KiB
Python
from enum import Enum, unique
|
|
from typing import Optional, List, Union, Any
|
|
from pydantic import BaseModel
|
|
from datetime import datetime, date
|
|
|
|
from Schemas.UserSchemas import UserInfo
|
|
|
|
|
|
@unique
|
|
class DailyTypeEnum(Enum):
|
|
董监高日报 = "董监高日报"
|
|
运行日报 = "运行日报"
|
|
部门子公司日报 = "部门子公司日报"
|
|
监管和同业动态 = "监管和同业动态"
|
|
行业信息专题分析 = "行业信息专题分析"
|
|
# 经营情况 = "经营情况"
|
|
财务营收 = "财务营收"
|
|
动态 = "动态"
|
|
|
|
|
|
class DailyExportToPdfReq(BaseModel):
|
|
day: date
|
|
|
|
|
|
class CommentInfo(BaseModel):
|
|
id: Optional[int]
|
|
daily_id: Optional[int]
|
|
user_email: Optional[str]
|
|
content: Optional[str]
|
|
user: Optional[UserInfo]
|
|
create_time: Optional[datetime]
|
|
|
|
|
|
class DailyInfo(BaseModel):
|
|
id: Optional[int]
|
|
type: Optional[DailyTypeEnum]
|
|
fill_user: Optional[str]
|
|
sign_name: Optional[str]
|
|
title: Optional[str]
|
|
department: Optional[int]
|
|
user: Optional[UserInfo]
|
|
required_auth: Optional[str]
|
|
post: Optional[int]
|
|
content: Optional[str]
|
|
file_md: Optional[str]
|
|
sub_type: Optional[str]
|
|
comments: Optional[List[CommentInfo]]
|
|
daily_time: Optional[datetime]
|
|
create_time: Optional[datetime]
|
|
update_time: Optional[datetime]
|
|
|
|
|
|
class DailyGetReq(BaseModel):
|
|
id: int
|
|
pass
|
|
|
|
|
|
class DailyGetRes(DailyInfo):
|
|
pass
|
|
|
|
|
|
class DailyChangeReq(BaseModel):
|
|
id: int
|
|
type: Optional[DailyTypeEnum]
|
|
fill_user: Optional[str]
|
|
sign_name: Optional[str]
|
|
title: Optional[str]
|
|
department: Optional[int]
|
|
required_auth: Optional[str]
|
|
post: Optional[int]
|
|
content: Optional[str]
|
|
sub_type: Optional[str]
|
|
daily_time: Optional[datetime]
|
|
file_md: Optional[str]
|
|
create_time: Optional[datetime]
|
|
update_time: Optional[datetime]
|
|
|
|
|
|
class DailyChangeRes(DailyInfo):
|
|
pass
|
|
|
|
|
|
class DailyQuery(BaseModel):
|
|
id: Optional[int]
|
|
type: Optional[DailyTypeEnum]
|
|
fill_user: Optional[str]
|
|
sign_name: Optional[str]
|
|
# name: Optional[str]
|
|
title: Optional[str]
|
|
# department_list: Optional[int]
|
|
department: Optional[Union[int, List[int]]]
|
|
required_auth: Optional[Union[int, List[int]]]
|
|
post: Optional[int]
|
|
content: Optional[str]
|
|
daily_time: Optional[Union[List[Union[int, None]],Any]]
|
|
create_time: Optional[List[Union[int, None]]]
|
|
update_time: Optional[List[Union[int, None]]]
|
|
sub_type: Optional[str]
|
|
page_size: Optional[int]
|
|
page: Optional[int]
|
|
fill_user_name:Optional[str]
|
|
|
|
|
|
class DailyQueryRes(BaseModel):
|
|
items: List[DailyInfo]
|
|
count: int
|
|
pass
|
|
|
|
|
|
class DailyAddReq(BaseModel):
|
|
type: DailyTypeEnum
|
|
fill_user: Optional[str]
|
|
department: Optional[int]
|
|
required_auth: Optional[str]
|
|
sign_name: Optional[str]
|
|
content: Optional[str]
|
|
post: Optional[int]
|
|
daily_time: Optional[datetime]
|
|
sub_type: Optional[str]
|
|
file_md: Optional[str]
|
|
title: Optional[str]
|
|
|
|
|
|
class DailyAddRes(DailyInfo):
|
|
pass
|
|
|
|
|
|
class DailyDeleteReq(BaseModel):
|
|
id: int
|
|
|
|
|
|
class DailyDeleteRes(BaseModel):
|
|
msg: str
|
|
state: int
|