feat(system): 计提参数版本管理、变更留痕与计算预览接口
- 9 个端点:目录快照(asOf)/单参数历史/变更批次提交与撤回/批次分页与明细/两日期对比/Excel 导出/计算预览 - submit_change 全量前置校验(注册表/维度岗位/取值域/同批去重)→ 建批次 → 逐项留痕(旧值取提交时生效值) - 撤回:FOR UPDATE 锁行 + 已生效禁撤,删除后解析自然回退;同日多次变更取最新留痕 - 预览按岗位模板分派公式(经理聚合口径明确拒绝),出参含所用参数与生效时点;导出走 openpyxl - ECharts 决策记录:前端统计图使用 echarts(用户指定) Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
1 parent
7a0f3f4b98
commit
8ad3650dd3
10 files changed
+1159
-19
No files matched your search
@@ -16,7 +16,10 @@ from app.services.param_service import ParamSnapshot
|
||||
|
||||
def _snap(rows: list[tuple[str, str, str]]) -> ParamSnapshot:
|
||||
"""构造快照。rows 须模拟仓储输出:同一 (code, dim) 的最新值在前。"""
|
||||
return ParamSnapshot.from_rows(date(2026, 10, 1), rows)
|
||||
# 仓储实际返回 4 元组(含生效日期);单测关注覆盖链,统一补同一个日期
|
||||
return ParamSnapshot.from_rows(
|
||||
date(2026, 10, 1), [(code, dim, value, date(2026, 1, 1)) for code, dim, value in rows]
|
||||
)
|
||||
|
||||
|
||||
class TestCoverChain:
|
||||
|
||||
Reference in new issue
Block a user