feat: add rule draft permission flow
This commit is contained in:
Executable → Regular
+11
-1
@@ -1,4 +1,4 @@
|
||||
from pydantic import BaseModel, Field
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
|
||||
|
||||
class EvaluationPointGroupCreateDTO(BaseModel):
|
||||
@@ -61,3 +61,13 @@ class EvaluationPointGroupBindingUpdateDTO(BaseModel):
|
||||
priority: int | None = Field(None, description="优先级")
|
||||
is_active: bool | None = Field(None, description="是否启用")
|
||||
note: str | None = Field(None, description="备注")
|
||||
|
||||
|
||||
class EvaluationPointGroupRuleDraftCreateDTO(BaseModel):
|
||||
"""二级分组下新建规则 YAML 草稿请求。"""
|
||||
|
||||
model_config = ConfigDict(populate_by_name=True)
|
||||
|
||||
yaml_text: str = Field(..., min_length=1, alias="yamlText", description="完整规则 YAML 正文")
|
||||
change_note: str | None = Field(None, alias="changeNote", description="版本变更说明")
|
||||
editor_user_id: int | None = Field(None, alias="editorUserId", description="编辑者用户ID")
|
||||
|
||||
Executable → Regular
+45
@@ -1,5 +1,7 @@
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from fastapi_modules.fastapi_leaudit.domian.vo.ruleVo import RuleVersionVO
|
||||
|
||||
|
||||
class RuleGroupBindingVO(BaseModel):
|
||||
"""二级分组下的规则集绑定。"""
|
||||
@@ -96,4 +98,47 @@ class EvaluationPointGroupBatchDeleteVO(BaseModel):
|
||||
message: str = Field(..., description="结果消息")
|
||||
|
||||
|
||||
class EvaluationPointGroupRuleTemplateContextVO(BaseModel):
|
||||
"""二级分组生成规则模板所需上下文。"""
|
||||
|
||||
group_id: int = Field(..., description="当前二级分组ID")
|
||||
group_code: str = Field(..., description="当前二级分组编码")
|
||||
group_name: str = Field(..., description="当前二级分组名称")
|
||||
parent_group_id: int = Field(..., description="所属一级分组ID")
|
||||
parent_group_code: str = Field(..., description="所属一级分组编码")
|
||||
parent_group_name: str = Field(..., description="所属一级分组名称")
|
||||
document_type_id: int | None = Field(None, description="关联文档类型ID")
|
||||
document_type_code: str | None = Field(None, description="关联文档类型编码")
|
||||
document_type_name: str | None = Field(None, description="关联文档类型名称")
|
||||
entry_module_id: int | None = Field(None, description="入口模块ID")
|
||||
entry_module_name: str | None = Field(None, description="入口模块名称")
|
||||
|
||||
|
||||
class EvaluationPointGroupRuleTemplateVO(BaseModel):
|
||||
"""二级分组规则模板响应。"""
|
||||
|
||||
context: EvaluationPointGroupRuleTemplateContextVO = Field(..., description="二级分组上下文")
|
||||
ruleType: str = Field(..., description="从分组上下文推导出的规则类型编码")
|
||||
ruleName: str = Field(..., description="规则集名称")
|
||||
nextVersionNo: str = Field(..., description="建议创建的下一个版本号")
|
||||
ossPreviewKey: str = Field(..., description="该版本预计写入的 OSS key")
|
||||
yamlTemplate: str = Field(..., description="可直接编辑的完整 YAML 模板")
|
||||
existingRuleSetId: int | None = Field(None, description="已存在的规则集ID")
|
||||
existingBindingId: int | None = Field(None, description="当前分组已存在的绑定ID")
|
||||
|
||||
|
||||
class EvaluationPointGroupRuleDraftVO(BaseModel):
|
||||
"""二级分组规则草稿创建响应。"""
|
||||
|
||||
packId: int = Field(..., description="规则配置 pack ID,当前等于二级分组ID")
|
||||
groupId: int = Field(..., description="二级分组ID")
|
||||
ruleName: str = Field(..., description="规则名称")
|
||||
ruleType: str = Field(..., description="规则类型编码")
|
||||
ruleSetId: int = Field(..., description="所属规则集ID")
|
||||
ossKey: str = Field(..., description="草稿写入的 OSS key")
|
||||
version: RuleVersionVO = Field(..., description="刚创建的规则版本")
|
||||
binding: RuleGroupBindingVO = Field(..., description="当前二级分组与规则集的绑定信息")
|
||||
autoBound: bool = Field(..., description="本次是否自动新增了绑定")
|
||||
|
||||
|
||||
EvaluationPointGroupVO.model_rebuild()
|
||||
|
||||
Reference in New Issue
Block a user