7c6ac2e5db
审核对象由「司机行 / 车辆行」改为「一条认证记录」,故新增两个待审列表页
(挂在运力管理下,path /transportCapacity/cert-audit-driver|vehicle,与页面
文件名一一对应)与审核详情弹窗:
- api/transportCapacity/certification-audit.js:pending-page / detail / audit 三个接口
- utils/cert-audit.js:快照字段元数据(中文名、控件类型、分组)与两侧快照的
字段级 diff 计算。两侧字段名一致(同一套快照结构),故逐键比较;日期归一化后
判等、长期有效联动展示、未登记字段兜底进「其他字段」
- components/cert-audit-diff:当前生效值与待审提交值并排展示,差异行高亮并标注
新增 / 已修改 / 已清空,支持切换只看变更项;从未认证通过(生效快照为空)时
显示「无对比基准」,不报错
- components/cert-audit-detail:审核详情弹窗(提交信息 + diff + 审核意见),
通过 / 驳回动作。驳回原因前端先拦一道(必填且不超过 200 字),通过时不提交原因;
已终态记录不可再审
- components/cert-audit-list + 两个菜单页:分页与按展示键(司机姓名 / 车牌号)筛选,
审核链接按 cert_certification_audit_{driver,vehicle}_audit 权限点控制
检索过的现有实现:driver.vue / vehicle.vue 的列表与弹窗写法(Avue option + search、
权限点 hasPermission 写法)、image-upload-field、section-card、utils/table-menu.js。
未找到可复用的快照或 diff 实现,故新增 utils/cert-audit.js 纯函数承担比对;
两个列表页除 bizType 与权限点外完全相同,故抽出通用列表组件承接分页/搜索,
避免两页逻辑各自演化。
31 lines
671 B
Vue
31 lines
671 B
Vue
<template>
|
|
<cert-audit-list
|
|
:option="option"
|
|
biz-type="driver"
|
|
audit-permission-code="cert_certification_audit_driver_audit"
|
|
/>
|
|
</template>
|
|
|
|
<script>
|
|
import { option } from '@/option/transportCapacity/cert-audit-driver';
|
|
import CertAuditList from './components/cert-audit-list/main.vue';
|
|
|
|
/**
|
|
* 认证审核-司机
|
|
*
|
|
* 菜单挂在运力管理下(path: /transportCapacity/cert-audit-driver),
|
|
* 列表与审核详情由通用组件承接,本页只固定认证对象类型与审核权限点。
|
|
*/
|
|
export default {
|
|
name: 'CertAuditDriver',
|
|
components: {
|
|
CertAuditList,
|
|
},
|
|
data() {
|
|
return {
|
|
option,
|
|
};
|
|
},
|
|
};
|
|
</script>
|