2.8 KiB
2.8 KiB
隐患排查审核不通过重提方案
目标
- 支持企业审核不通过后,驾驶员再次编辑并重新提交。
- 每次审核不通过时,保存当次提交快照、驳回原因、照片、签名等信息。
- 详情接口可返回多次审核不通过历史,便于企业端查看。
后端改动
主表 hot_hidden_danger_inspection
新增字段:
submit_version:提交版本号audit_result:审核结果,PASS/REJECTreject_count:驳回次数last_reject_reason:最近一次驳回原因last_reject_time:最近一次驳回时间last_reject_by_id:最近一次驳回人IDlast_reject_by_name:最近一次驳回人姓名
新表 hot_hidden_danger_inspection_audit_history
用于保存每次审核不通过时的完整快照:
- 主单ID、计划ID、项目信息
- 提交版本号、审核轮次
- 驳回原因、审核人、审核时间、审核签名
- 当次排查内容、隐患描述、附件、排查人签名、排查人、排查时间
submit_snapshot_json作为完整快照冗余
业务逻辑
驾驶员提交
- 首次提交时,沿用原有
updateByBo提交流程。 - 驳回后再次编辑提交时,只要主单已经被回调置为:
status = 1flow_status = REJECTEDinstance_id = null
- 再次保存后会重新启动
HIDDEN_DANGER_CHECK流程。 - 每次重提时:
submit_version + 1- 清空上一轮审核结论、审核签名、评估人等中间字段
- 状态回到
status = 2
企业审核
审核新增两种结果:
PASS:审核通过REJECT:审核不通过
处理规则:
PASS + auditHasDanger = 0- 流程通过
- 主单最终状态在回调中置为
3
PASS + auditHasDanger = 1- 流程通过
- 主单在回调中置为
6 - 自动创建隐患治理流程
REJECT- 先写入驳回历史表
- 主单记录最近一次驳回信息
- 流程按驳回处理
- 回调把主单恢复为可再次编辑状态
流程回调
HiddenDangerCheckCallback 调整为:
- 成功:
flow_status = APPROVED- 无隐患:
status = 3 - 有隐患:
status = 6 - 仅在成功且存在隐患时创建治理流程
- 驳回:
flow_status = REJECTEDstatus = 1instance_id = null- 允许驾驶员再次提交
详情接口
queryById 返回主单详情时,额外附带:
rejectHistoryList
该字段按驳回轮次倒序返回,可直接给前端做历史展开。
SQL 文件
SQL 已写入:
sql/update_hidden_danger_inspection_reject_history.sql
注意事项
- 当前版本只改后端,未改前端和移动端展示。
- 前端后续只要在详情页读取
rejectHistoryList即可展示多次驳回历史。 - 审核接口调用时建议明确传
auditResult,不要再仅依赖auditHasDanger推断审核结果。