# 预算中心 MASTER TODO

## 总目标

把预算从首页静态展示升级为真实费控底座，让费用申请和报销都必须经过预算口径校验。

## 状态图

```text
预算额度
  -> 申请提交: 预占
  -> 申请退回/撤回/驳回: 释放
  -> 申请通过: 保持预占
  -> 报销提交: 校验申请与预算
  -> 报销审批通过: 核销
  -> 报销退回/撤回: 释放或回滚
```

## 总 TODO

- [ ] 新增预算中心开发文档并纳入每日核对。
- [ ] 定义预算维度：部门、成本中心、项目、费用科目、期间。
- [ ] 定义预算模型：预算额度、预算交易、预算占用。
- [ ] 定义预算状态：正常、预警、超预算、冻结。
- [ ] 定义预算交易类型：初始化、调整、预占、释放、核销、回滚。
- [ ] 新增预算列表接口。
- [ ] 新增预算详情接口。
- [ ] 新增预算台账接口。
- [ ] 新增预算占用接口或内部服务。
- [ ] 新增预算释放接口或内部服务。
- [ ] 新增预算核销接口或内部服务。
- [ ] 费用申请提交时写入预算预占。
- [ ] 费用申请驳回、撤回、取消时释放预算。
- [ ] 费用申请转报销时保留预算来源。
- [ ] 报销提交时校验预算归属和可用余额。
- [ ] 报销审批通过时核销预算。
- [ ] 报销退回时回滚预算状态。
- [ ] 报销详情展示预算占用和核销信息。
- [ ] 申请详情展示预算占用和剩余额度。
- [ ] 预算中心页面展示执行率、已占用、已核销、可用余额。
- [ ] 预算台账展示每笔来源单据和交易类型。
- [ ] 首页预算执行率改为后端真实数据。
- [ ] 本体识别支持预算维度字段。
- [ ] AI对话能解释预算不足、预算归属缺失、超预算原因。
- [ ] 添加后端单元测试。
- [ ] 添加前端预算视图测试。
- [ ] 添加申请到报销的端到端预算验收场景。

## 验收场景

- [ ] 有预算时，费用申请提交成功并预占预算。
- [ ] 预算不足时，申请提交被阻断或进入超预算复核。
- [ ] 申请驳回后，预算预占被释放。
- [ ] 申请审批通过后，预算仍保持预占。
- [ ] 申请转报销后，报销单继承预算来源。
- [ ] 报销审批通过后，预算从预占转为核销。
- [ ] 报销退回后，预算核销回滚。
- [ ] 预算中心能看到完整交易台账。
- [ ] 首页预算执行率与预算中心汇总一致。

