证据材料审查弹窗任务清单
阶段1:API层准备
- [x] 1.1 更新EvidenceAPIService.getPersonInfo方法签名
- 修改参数为:{ case_id, evidence_type, per_type }
- 更新JSDoc注释
- [x] 1.2 更新EvidenceAPIService.getEvidenceListByPerson方法签名
- 修改参数为:{ case_id, evidence_type, per_type, person_id }
- 更新JSDoc注释
- [x] 1.3 更新EvidenceAPIService.auditEvidence方法签名
- 修改为POST请求(当前为PUT)
- 参数:case_id, evidence_type, person_id, file_id_list, audit_user, audit_state, audit_remark
- 更新JSDoc注释
阶段2:审核按钮入口
- [x] 2.1 在EvidenceBoard的renderEvidenceItem中添加"审核"按钮
- 仅当
audit_state !== 1时显示
- 按钮样式参考原型
- [x] 2.2 添加弹窗状态管理
- auditModalVisible: 控制弹窗显示/隐藏
- currentAuditItem: 当前审核的材料项数据
- 包含:case_id, evidence_type, per_type, person_id, name
阶段3:审核弹窗UI实现
- [x] 3.1 创建EvidenceAuditModal组件结构
- 使用Ant Design Modal组件
- 宽度约1000px,居中显示
- [x] 3.2 实现材料基本信息区域
- 调用getPersonInfo API
- 展示:提交人、材料类型、材料数量、提交时间
- 使用info-grid布局,遵循原型样式
- [x] 3.3 实现材料清单表格
- 表头:材料信息、材料预览
- 展示:材料类型、文件格式、上传时间、文件大小
- 注意:不显示"查看详情"按钮 ✅ 已移除
- [x] 3.4 实现材料预览区域
- 调用getEvidenceListByPerson API获取图片列表
- 图片URL拼接:platform_url + "/" + show_url
- platform_url从localStorage.case_data_timeline.process_config.platform_url获取
- 使用Ant Design Image组件,支持点击放大预览
- [x] 3.5 实现审核操作按钮区域
- 审核通过按钮(btn-pass样式)
- 退回补充按钮(btn-return样式)
阶段4:审核逻辑实现
- [x] 4.1 实现"审核通过"功能
- 调用auditEvidence API,audit_state=1
- 成功后显示message.success提示
- 关闭弹窗并刷新材料列表
- [x] 4.2 实现"退回补充"功能
- 打开退回意见输入弹窗(嵌套Modal或内联表单)
- 退回意见必填校验
- 调用auditEvidence API,audit_state=2, audit_remark=退回意见
- 成功后显示message.success提示
- 关闭弹窗并刷新材料列表
- [x] 4.3 实现图片大图预览功能
- 点击缩略图打开Image.PreviewGroup
- 支持左右切换、缩放等操作
阶段5:样式与交互优化
- [x] 5.1 确保弹窗样式100%遵循doc_audit.html原型
- 头部渐变背景
- section-title样式(蓝色竖条)
- 表格样式(list-table)
- 按钮样式(btn-pass, btn-return)
- [x] 5.2 添加Loading状态
- 数据加载时显示Spin
- 提交审核时按钮显示loading
- [x] 5.3 添加错误处理
- API调用失败时显示错误提示
- 网络异常处理
阶段6:测试验证
- [x] 6.1 验证审核按钮显示逻辑
- audit_state=0时显示
- audit_state=1时不显示
- audit_state=-2时显示
- [x] 6.2 验证弹窗数据加载
- getPersonInfo API正确调用
- getEvidenceListByPerson API正确调用
- 图片URL正确拼接
- [x] 6.3 验证审核操作
- 审核通过流程正常
- 退回补充流程正常(含必填校验)
- 操作后弹窗关闭、列表刷新
涉及文件
web-app/src/services/EvidenceAPIService.js - API方法更新 ✅
web-app/src/components/dashboard/TabContainer.jsx - EvidenceBoard组件修改 ✅
完成状态
所有任务已完成 ✅ (2026-01-26)