# Change: 补发历史线下代理充值审批与补发历史退款审批 ## Why 历史线下代理充值记录和历史退款申请在企微审批流程上线前创建,列表中这些记录的审批状态为空,运营人员无法为它们补发审批流程。需要为这两类业务提供“补发审批”入口,调用后端触发审批接口,将历史记录纳入企微审批。 ## What Changes - 在 `AgentRechargeService` 新增 `triggerApproval(id)`,调用 `POST /api/admin/agent-recharges/{id}/trigger-approval`。 - 在 `RefundService` 新增 `triggerApproval(id)`,调用 `POST /api/admin/refunds/{id}/trigger-approval`。 - 在代理充值列表为 `approval_status` 为空且 `status` 不属于已完成、已驳回、已关闭的充值记录增加“补发审批”操作。 - 在退款列表为 `status=待审批` 且 `approval_status` 为空的退款申请增加“补发审批”操作。 - 引入权限 `agent_recharge:trigger_approval` 和 `refund:trigger_approval`,仅对有权限的平台账号展示操作。 - 补发成功后刷新列表并展示返回的最新审批状态;失败时展示后端错误信息。 - 不改变现有“确认支付”“拒绝”“重新申请”等操作的资格和职责。 ## Impact - Affected specs: - `agent-recharge` - `refund-management` - Affected code: - `src/api/modules/agentRecharge.ts` - `src/api/modules/refund.ts` - `src/types/api/agentRecharge.ts` - `src/types/api/refund.ts` - `src/views/finance/agent-recharge/agentRechargeActions.ts` - `src/views/finance/agent-recharge/index.vue` - `src/views/finance/refund/index.vue` - API contracts: - `POST /api/admin/agent-recharges/{id}/trigger-approval` - `POST /api/admin/refunds/{id}/trigger-approval` - Dependencies: - 后端按文档返回完整业务记录及当前审批状态。 - 后端负责校验记录是否可补发审批,前端仅控制入口展示并处理后端拒绝。 - Out of scope: - 企微审批的发起、撤回、通过、驳回或删除动作本身。 - 修改历史记录的业务字段、金额或支付/退款结果。 - 自动判断并批量补发历史审批。