api-datamanager/Modules/Indicators/IndicatorObj.py

76 lines
2.2 KiB
Python

from Utils.ObjUtil import SpecObject
from Utils.ValidateUtil import ValidateAttr
class IndexObj(SpecObject):
"""指标"""
class Parameter(SpecObject):
"""传入参数"""
class DataDind(SpecObject):
"""数据绑定"""
class Path(SpecObject):
"""路径"""
database = ValidateAttr(field="", type=str)
sheet = ValidateAttr(field="sheet", type=str)
field = ValidateAttr(field="field", type=str)
fields_map = {
"database": "",
"sheet": "",
"field": "字段"
}
class Site(SpecObject):
"""设置"""
type = ValidateAttr(field="type", type=str)
transform = ValidateAttr(field="transform", type=str)
fields_map = {
"type": "类型",
"transform": "转换",
}
path = ValidateAttr(field="path", type=Path)
site = ValidateAttr(field="site", instance_list=Site)
fields_map = {
"path": "路径",
"site": "设置"
}
param = ValidateAttr(field="param", type=str)
data_bind = ValidateAttr(field="data_bind", type=DataDind)
describe = ValidateAttr(field="describe", type=str)
fields_map = {
"param": "参数",
"data_bind": "数据绑定",
"describe": "说明"
}
index_id = ValidateAttr(field='index_id', type=str)
index_field = ValidateAttr(field='index_field', type=str)
func_field = ValidateAttr(field='func_field', type=str)
parameter = ValidateAttr(field='parameter', instance_list=Parameter)
fields_map = {
"index_id": "指标ID",
"index_field": "指标名称",
"func_field": "绑定函数",
"parameter": "传入参数"
}
class TagObj(SpecObject):
"""标签"""
tag_id = ValidateAttr(field='tag_id', type=str)
tag_field = ValidateAttr(field='tag_field', type=str)
fields_map = {
"tag_id": "标签ID",
"tag_field": "标签名称"
}