# ERP 采购来票去掉审核 - 前端联调方案 ## 变更背景 采购来票(`erp_purchase_invoice`)不再需要审核流程,来票创建后直接生效、可直接用于付款。后端已删除审核状态字段(`auditStatus`)与工作流残留字段(`processInstanceId`),并移除了审核相关接口;付款创建时不再校验"来票必须审核通过"。 ## 涉及页面 - 采购来票管理页(`views/erp/purchase/invoice/`) - 付款单管理页(`views/erp/finance/payment/`,仅行为变化,无需改代码) ## 接口变更 ### 已删除接口 | 方法 | 路径 | 说明 | |------|------|------| | PUT | /erp/purchase-invoice/update-status | 审核/反审核,前端需删除对应按钮与 API 函数 | | GET | /erp/purchase-invoice/audit-count | 待审核来票数量,前端需删除对应 API 函数 | ### 响应字段变化 | 接口 | 变化 | |------|------| | /erp/purchase-invoice/page | 响应移除 `auditStatus`、`processInstanceId` 字段 | | /erp/purchase-invoice/get | 响应移除 `auditStatus`、`processInstanceId` 字段 | | /erp/purchase-invoice/simple-list | 响应移除 `auditStatus` 字段;不再只返回"审核通过"来票,改为返回该供应商/订单下"已上传附件且剩余可付 > 0"的全部来票 | | /erp/finance-payment/get、/page | 嵌套 `invoice` 对象中不再包含 `auditStatus` 字段 | ### 校验规则变化(后端,前端无改动) | 场景 | 变化 | |------|------| | 付款创建/更新 | 去掉"关联来票必须审核通过"校验,其余校验(来票存在、已传附件、供应商一致、金额不超剩余可付)保留 | ## 前端修改点 ### 1. API 定义(`src/api/erp/purchase/invoice/index.ts`) - `PurchaseInvoice` 类型:删除 `auditStatus`、`processInstanceId` 字段 - `PurchaseInvoiceSimple` 类型:删除 `auditStatus` 字段 - 删除函数:`updatePurchaseInvoiceStatus`、`getAuditPurchaseInvoiceCount` - 更新 `getPurchaseInvoiceSimpleList` 注释说明 ### 2. 来票列表页(`src/views/erp/purchase/invoice/index.vue`) - 删除"审核""反审核"操作按钮及对应处理函数 - 删除"审批状态"列的状态 Tag 模板 - 编辑按钮不再按审核状态控制显隐(任意状态可编辑) - 删除按钮不再按审核状态控制显隐(是否可删由后端校验"已有有效付款单"决定) ### 3. 来票列表配置(`src/views/erp/purchase/invoice/data.ts`) - 搜索表单:删除"审核状态"筛选项 - 列表列:删除"审批状态"列 ## 业务规则说明 | 场景 | 规则 | |------|------| | 来票创建 | 创建即生效,无审核环节 | | 来票编辑 | 任意状态可编辑 | | 来票删除 | 已有有效付款单(付款金额 > 0)关联的来票不可删除,后端会返回错误提示 | | 付款选择来票 | 下拉只展示"已上传附件且剩余可付 > 0"的来票,不再有"待审核"来票 | ## 注意事项 - 付款模块(`views/erp/finance/payment/`)未引用 `auditStatus`,无需修改;其"关联来票"下拉可选范围随后端 simple-list 逻辑自动变化。 - 历史来票数据:数据库已删除 `audit_status`、`process_instance_id` 两列,历史来票全部视为有效,可直接用于付款。 - 前端接口删除后,请同步检查是否有其它页面(如工作台/待办)调用已删除的接口,当前未发现。