You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
5.0 KiB
96 lines
5.0 KiB
2 months ago
|
from datetime import datetime
|
||
|
from pydantic import BaseModel, ConfigDict, Field
|
||
|
from pydantic.alias_generators import to_camel
|
||
|
from typing import List, Optional
|
||
|
from module_admin.annotation.pydantic_annotation import as_query
|
||
|
|
||
|
|
||
|
class DataAssetItemModel(BaseModel):
|
||
|
"""
|
||
|
数据资产信息项模型
|
||
|
"""
|
||
|
|
||
|
model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True, from_attributes=True)
|
||
|
|
||
|
|
||
|
ast_no: int = Field(default=None, alias="astNo", description='数据资产编号(必填)')
|
||
|
data_ast_eng_name: str = Field(default=None, alias="dataAstEngName", description='数据资产英文名称(必填)')
|
||
|
data_ast_cn_name: str = Field(default=None, alias="dataAstCnName", description='数据资产中文名称')
|
||
|
data_ast_type: str = Field(default=None, alias="dataAstType", description='数据资产类型(表/报表/数据应用)(必填)')
|
||
|
data_ast_stat: str = Field(default=None, alias="dataAstStat", description='数据资产状态(有效/废弃)(必填)')
|
||
|
data_ast_desc: str = Field(default=None, alias="dataAstDesc", description='数据资产描述')
|
||
|
data_ast_screen: str = Field(default=None, alias="dataAstScreen", description='资产应用场景(API/智能问答等)')
|
||
|
data_ast_scren_clas: str = Field(default=None, alias="dataAstScrenClas", description='应用场景分类')
|
||
|
data_ast_clas: str = Field(default=None, alias="dataAstClas", description='数据资产标签')
|
||
|
data_ast_cont: str = Field(default=None, alias="dataAstCont", description='数据资产内容')
|
||
|
data_ast_faq: str = Field(default=None, alias="dataAstFaq", description='数据资产常见问题')
|
||
|
data_ast_src: str = Field(default=None, alias="dataAstSrc", description='数据资产来源(必填)')
|
||
|
version_no: str = Field(default="1", alias="versionNo", description='版本号(默认最新)')
|
||
|
ctrl_flag: str = Field(default=None, alias="ctrlFlag", description='操作类型 1:插入 2:删除 3:更新')
|
||
|
|
||
|
|
||
|
class DataAssetBatchModel(BaseModel):
|
||
|
"""
|
||
|
数据资产批量操作模型
|
||
|
"""
|
||
|
|
||
|
model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True, from_attributes=True)
|
||
|
|
||
|
data_assets: List[DataAssetItemModel] = Field(default=[], alias="dataAssets", description='数据资产列表')
|
||
|
|
||
|
|
||
|
class DataAssetResultModel(BaseModel):
|
||
|
"""
|
||
|
数据资产操作结果模型
|
||
|
"""
|
||
|
|
||
|
model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True, from_attributes=True)
|
||
|
|
||
|
success_count: int = Field(default=0, alias="successCount", description='成功数量')
|
||
|
failed_count: int = Field(default=0, alias="failedCount", description='失败数量')
|
||
|
success_items: List[str] = Field(default=[], alias="successItems", description='成功项')
|
||
|
failed_items: List[dict] = Field(default=[], alias="failedItems", description='失败项及原因')
|
||
|
|
||
|
|
||
|
class DataAssetQueryModel(BaseModel):
|
||
|
"""
|
||
|
数据资产查询模型
|
||
|
"""
|
||
|
|
||
|
model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True, from_attributes=True)
|
||
|
|
||
|
ast_no: Optional[str] = Field(default=None, alias="astNo", description='资产编号')
|
||
|
data_ast_eng_name: Optional[str] = Field(default=None, alias="dataAstEngName", description='资产英文名称')
|
||
|
data_ast_cn_name: Optional[str] = Field(default=None, alias="dataAstCnName", description='资产中文名称')
|
||
|
data_ast_type: Optional[str] = Field(default=None, alias="dataAstType", description='资产类型')
|
||
|
data_ast_stat: Optional[str] = Field(default=None, alias="dataAstStat", description='资产状态')
|
||
|
data_ast_src: Optional[str] = Field(default=None, alias="dataAstSrc", description='资产来源')
|
||
|
begin_time: Optional[str] = Field(default=None, alias="beginTime", description='开始时间')
|
||
|
end_time: Optional[str] = Field(default=None, alias="endTime", description='结束时间')
|
||
|
|
||
|
|
||
|
@as_query
|
||
|
class DataAssetPageQueryModel(DataAssetQueryModel):
|
||
|
"""
|
||
|
数据资产分页查询模型
|
||
|
"""
|
||
|
|
||
|
page_num: int = Field(default=1, alias="pageNum", description='当前页码')
|
||
|
page_size: int = Field(default=10, alias="pageSize", description='每页记录数')
|
||
|
|
||
|
|
||
|
@as_query
|
||
|
class DataAssetSearchModel(BaseModel):
|
||
|
"""
|
||
|
数据资产综合查询模型
|
||
|
"""
|
||
|
|
||
|
model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True, from_attributes=True)
|
||
|
|
||
|
name: Optional[str] = Field(default=None, alias="name", description='资产名称(英文名或中文名)')
|
||
|
data_ast_type: Optional[str] = Field(default=None, alias="dataAstType", description='资产类型')
|
||
|
data_ast_screen: Optional[str] = Field(default=None, alias="dataAstScreen", description='资产应用场景')
|
||
|
data_ast_clas: Optional[str] = Field(default=None, alias="dataAstClas", description='资产标签')
|
||
|
data_ast_src: Optional[str] = Field(default=None, alias="dataAstSrc", description='资产来源')
|
||
|
page_num: int = Field(default=1, alias="pageNum", description='当前页码')
|
||
|
page_size: int = Field(default=10, alias="pageSize", description='每页记录数')
|