# 证据材料审查弹窗任务清单 ## 阶段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)