feat: 增强风险规则生成引擎与预算中心页面
后端拆分风险规则生成为解释器、语义分析、本体对齐等子模块, 优化模板执行和流程图生成,完善员工种子数据和导入逻辑,增强 报销单权限策略和草稿持久化,前端新增预算中心视图和趋势图 组件,重构审计页面和风险规则测试对话框交互,完善文档中心 和报销创建页面细节,补充单元测试覆盖。
This commit is contained in:
105
document/development/budget-center/day_1_budget_foundation.md
Normal file
105
document/development/budget-center/day_1_budget_foundation.md
Normal file
@@ -0,0 +1,105 @@
|
||||
# Day 1 - 预算模型与接口契约
|
||||
|
||||
## 目标
|
||||
|
||||
先把预算中心的数据边界和接口边界定稳,避免后续把预算逻辑散落在申请、报销、审批和付款模块里。
|
||||
|
||||
## 开发任务
|
||||
|
||||
- [ ] 新增预算模型设计。
|
||||
- [ ] 新增预算交易台账设计。
|
||||
- [ ] 新增预算服务边界设计。
|
||||
- [ ] 新增预算接口契约。
|
||||
- [ ] 新增预算状态与交易类型常量。
|
||||
- [ ] 明确申请、报销、付款对预算服务的调用点。
|
||||
|
||||
## 建议模型
|
||||
|
||||
预算额度:
|
||||
|
||||
```text
|
||||
BudgetAllocation
|
||||
- id
|
||||
- budget_no
|
||||
- fiscal_year
|
||||
- period_type
|
||||
- period_key
|
||||
- department_id
|
||||
- department_name
|
||||
- cost_center
|
||||
- project_code
|
||||
- subject_code
|
||||
- subject_name
|
||||
- original_amount
|
||||
- adjusted_amount
|
||||
- status
|
||||
- warning_threshold
|
||||
- created_at
|
||||
- updated_at
|
||||
```
|
||||
|
||||
预算交易:
|
||||
|
||||
```text
|
||||
BudgetTransaction
|
||||
- id
|
||||
- transaction_no
|
||||
- allocation_id
|
||||
- source_type
|
||||
- source_id
|
||||
- source_no
|
||||
- transaction_type
|
||||
- amount
|
||||
- before_available_amount
|
||||
- after_available_amount
|
||||
- operator
|
||||
- reason
|
||||
- created_at
|
||||
```
|
||||
|
||||
交易类型:
|
||||
|
||||
```text
|
||||
init 初始化
|
||||
adjust 调整
|
||||
reserve 预占
|
||||
release 释放
|
||||
consume 核销
|
||||
rollback 回滚
|
||||
freeze 冻结
|
||||
unfreeze 解冻
|
||||
```
|
||||
|
||||
预算汇总字段由交易汇总得到:
|
||||
|
||||
```text
|
||||
total_amount = original_amount + adjusted_amount
|
||||
reserved_amount = reserve - release
|
||||
consumed_amount = consume - rollback
|
||||
available_amount = total_amount - reserved_amount - consumed_amount
|
||||
```
|
||||
|
||||
## 接口契约
|
||||
|
||||
```text
|
||||
GET /api/v1/budgets/allocations
|
||||
POST /api/v1/budgets/allocations
|
||||
GET /api/v1/budgets/allocations/{id}
|
||||
GET /api/v1/budgets/allocations/{id}/transactions
|
||||
POST /api/v1/budgets/allocations/{id}/adjust
|
||||
POST /api/v1/budgets/check
|
||||
POST /api/v1/budgets/reserve
|
||||
POST /api/v1/budgets/release
|
||||
POST /api/v1/budgets/consume
|
||||
POST /api/v1/budgets/rollback
|
||||
GET /api/v1/budgets/summary
|
||||
```
|
||||
|
||||
## 验收
|
||||
|
||||
- [ ] 能创建一条部门月度预算。
|
||||
- [ ] 能查询预算列表和详情。
|
||||
- [ ] 能查询预算台账。
|
||||
- [ ] 能根据部门、成本中心、项目、费用科目定位预算。
|
||||
- [ ] 预算不足时 `check` 接口能返回明确原因。
|
||||
|
||||
Reference in New Issue
Block a user