编辑 | blame | 历史 | 原始文档

销售台账 — 协同审批

涉及页面

  • 销售台账新增/编辑页面 — 新增时自动发起审批,列表展示审批状态
  • 协同审批管理 — 审批模板配置、审批流程处理
  • 生产主计划列表 — 展示审批状态列

后端变更说明

新增枚举

TypeEnums 新增 SALES_LEDGER_APPROVAL(19L, "销售审批")

审批状态

SalesLedger.approvalStatusProductionPlan.approvalStatus
| 值 | 含义 |
|----|------|
| 0 | 待审批 |
| 1 | 审批中 |
| 2 | 已通过 |
| 3 | 已驳回 |

审批流程

  1. 销售台账新增时自动发起审批,sales_ledger.approval_status = 0
  2. 审批中状态变为 1,审批通过变为 2,审批驳回变为 3
  3. 审批通过后,自动创建生产主计划,production_plan.approval_status = 2
  4. 审批模板需要在**协同审批管理**中单独配置(不在协同审批模板列表中展示)

API

无新增前端调用接口,审批由后端自动发起。

前端修改点

1. 销售台账列表 — 增加审批状态列

<el-table-column label="审批状态" prop="approvalStatus" width="100">
  <template slot-scope="scope">
    <el-tag v-if="scope.row.approvalStatus === 0" type="info">待审批</el-tag>
    <el-tag v-else-if="scope.row.approvalStatus === 1" type="warning">审批中</el-tag>
    <el-tag v-else-if="scope.row.approvalStatus === 2" type="success">已通过</el-tag>
    <el-tag v-else-if="scope.row.approvalStatus === 3" type="danger">已驳回</el-tag>
  </template>
</el-table-column>

2. 销售台账详情 — 展示审批状态

<el-form-item label="审批状态">
  <el-tag v-if="form.approvalStatus === 0" type="info">待审批</el-tag>
  <el-tag v-else-if="form.approvalStatus === 1" type="warning">审批中</el-tag>
  <el-tag v-else-if="form.approvalStatus === 2" type="success">已通过</el-tag>
  <el-tag v-else-if="form.approvalStatus === 3" type="danger">已驳回</el-tag>
</el-form-item>

3. 生产主计划列表 — 增加审批状态列

<el-table-column label="审批状态" prop="approvalStatus" width="100">
  <template slot-scope="scope">
    <el-tag v-if="scope.row.approvalStatus === 2" type="success">已通过</el-tag>
    <el-tag v-else-if="scope.row.approvalStatus === 3" type="danger">已驳回</el-tag>
    <el-tag v-else type="info">-</el-tag>
  </template>
</el-table-column>

4. 审批模板配置

在**协同审批管理 > 审批模板**页面,新增模板时:
- 业务类型选择"销售审批(19)"
- 配置审批节点
- 模板配置后,销售台账新增时自动匹配最新模板发起审批

5. 协同审批列表

审批列表已自动支持销售审批类型的展示:
- 审批标题格式:{销售合同号}销售审批
- 列表中的单号列展示销售合同号

数据库变更

执行文件:doc/sql/20260613_sales_ledger_approval.sql

ALTER TABLE sales_ledger
ADD COLUMN IF NOT EXISTS approval_status INT DEFAULT 0 COMMENT '审批状态:0-待审批,1-审批中,2-已通过,3-已驳回';

ALTER TABLE production_plan
ADD COLUMN IF NOT EXISTS approval_status INT DEFAULT NULL COMMENT '审批状态:0-待审批,1-审批中,2-已通过,3-已驳回';

注意事项

  • 销售审批模板不在协同审批模板下拉列表中展示(与采购审批、报价审批、发货审批一致),需要在审批模板管理页面单独配置
  • 审批通过后自动创建生产主计划,来源标记为"销售",下发状态为"未下发"
  • 审批驳回后,销售台账可编辑重新提交(当前版本仅支持新增时发起审批)
  • 导入的销售台账不会自动发起审批,如需审批需单独处理