Skip to content

POST /dm-store/flow/approve

Content-Type: application/json

触发按钮:setApproveStatus

入参

出参

传递对象:ResultData

前端校验规则

text
前端校验
├── 条件校验
│   └── setApproveStatus
│       └── 仅 row.businessOrderType===1 || row.businessOrderType===2 || row.businessOrderType===3 || row.businessOrderType===4 时调用 POST /dm-store/flow/approve
└── 按钮权限控制
    └── 审批操作按钮
        ├── 列表“通过/不通过”仅 row.auditStatus===0 时显示
        └── 弹窗底部“通过/不通过”仅 currentRow.auditStatus==0 时显示

后端逻辑

text
业务流程:按单据类型路由审批服务后提交工作流审批并执行通过或驳回处理
├── 按单据类型路由审批服务
│   ├── FlowBeanFactory.getInstance :29-50
│   └── BaseFlowService.approve :72-125
├── 提交工作流审批
│   ├── FlowClient.approveProcess :81
│   ├── FlowAuditLogServiceImpl.approveProcess :338-460
│   └── ProcessServiceImpl.approveProcess :127-202
├── 更新审批链路
│   ├── auditLogDao.updateById :409
│   └── auditLogDao.insertList :438
└── 执行通过/驳回后置处理
    ├── BaseFlowService.refuseHandle :96
    └── BaseFlowService.passHandle :122

后端校验规则

text
后端校验
├── 数据存在性校验
│   ├── 校验 businessOrderType 能命中对应审批服务:getInstance :29-49
│   │   └── ExceptionCode.EX600046
│   ├── 校验流程实例存在待审批记录:approveProcess :340-348
│   │   └── ExceptionCode.EX800001
│   └── 校验业务编码存在流程配置:approveProcess :372-378
│       └── ExceptionCode.EX800026
├── 状态类校验
│   ├── 个人调拨单据状态必须可审批:checkStatus :397-402
│   │   └── ExceptionCode.EX100104
│   ├── 个人报损单据状态必须可审批:checkStatus :326-331
│   │   └── ExceptionCode.EX100104
│   ├── 库存盘点状态必须处于作业中:checkStatus :311-314
│   │   └── ExceptionCode.EX100104
│   └── 物料报废单据状态必须可审批:checkStatus :518-520
│       └── ExceptionCode.EX100104
└── 占用权限校验
    ├── 校验当前审批人必须与待审批记录中的审批人一致:approveProcess :351-353
    │   └── ExceptionCode.EX80020
    └── 校验当前用户对当前流程任务有审批权限:approveProcess :156-160
        └── ExceptionCode.EX80020

涉及数据库表