后端拆分风险规则生成为解释器、语义分析、本体对齐等子模块, 优化模板执行和流程图生成,完善员工种子数据和导入逻辑,增强 报销单权限策略和草稿持久化,前端新增预算中心视图和趋势图 组件,重构审计页面和风险规则测试对话框交互,完善文档中心 和报销创建页面细节,补充单元测试覆盖。
40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
from __future__ import annotations
|
|
|
|
import json
|
|
from typing import Any
|
|
|
|
|
|
def build_risk_rule_version_markdown(payload: dict[str, Any]) -> str:
|
|
metadata = payload.get("metadata") if isinstance(payload.get("metadata"), dict) else {}
|
|
fields = (
|
|
payload.get("inputs", {}).get("fields") if isinstance(payload.get("inputs"), dict) else []
|
|
)
|
|
field_labels = [
|
|
str(item.get("label") or item.get("key") or "").strip()
|
|
for item in fields
|
|
if isinstance(item, dict) and str(item.get("label") or item.get("key") or "").strip()
|
|
]
|
|
return "\n".join(
|
|
[
|
|
f"# {payload.get('name')}",
|
|
"",
|
|
"## 业务说明",
|
|
"",
|
|
str(payload.get("description") or ""),
|
|
"",
|
|
"## 自然语言原文",
|
|
"",
|
|
str(metadata.get("natural_language") or ""),
|
|
"",
|
|
"## 使用字段",
|
|
"",
|
|
"、".join(field_labels) or "未识别字段",
|
|
"",
|
|
"## 运行时 JSON",
|
|
"",
|
|
"```json",
|
|
json.dumps(payload, ensure_ascii=False, indent=2),
|
|
"```",
|
|
]
|
|
)
|