28 lines
1.5 KiB
Python
28 lines
1.5 KiB
Python
"""规则配置页聚合 VO。"""
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class RuleConfigPackVO(BaseModel):
|
|
"""规则配置页的单个 pack。"""
|
|
|
|
packId: int = Field(..., description="pack 标识,当前等于二级分组ID")
|
|
groupId: int = Field(..., description="二级分组ID")
|
|
rootGroupId: int | None = Field(None, description="一级分组ID")
|
|
bindingId: int | None = Field(None, description="当前命中的规则集绑定ID")
|
|
ruleSetId: int | None = Field(None, description="命中的规则集ID")
|
|
ruleType: str | None = Field(None, description="规则类型编码")
|
|
ruleName: str | None = Field(None, description="规则集名称")
|
|
currentVersionId: int | None = Field(None, description="规则集当前版本ID")
|
|
fallbackVersionId: int | None = Field(None, description="规则集回退版本ID")
|
|
resolvedVersionId: int | None = Field(None, description="当前实际使用的版本ID")
|
|
hasUsableVersion: bool = Field(False, description="是否存在可用规则版本")
|
|
usableRuleCount: int = Field(0, description="可用规则数")
|
|
documentTypeId: int | None = Field(None, description="文档类型ID")
|
|
documentType: str = Field("", description="文档类型名称")
|
|
moduleType: str = Field("", description="模块名称")
|
|
mainType: str = Field("", description="一级业务类型名称")
|
|
subtype: str = Field("", description="二级业务子类型名称")
|
|
yamlText: str = Field("", description="当前规则 YAML 正文")
|
|
sourceStatus: str = Field(..., description="ready/empty/missing")
|