// src/api/mockAssessmentApi.js import { assessmentListData, assessmentDetailData, mockDelay } from './assessmentData.js' // 模拟评估列表API export const listAssessment = async (queryParams) => { await mockDelay(800) console.log('Mock API: 获取评估列表', queryParams) // 模拟筛选逻辑 let data = assessmentListData.data.rows if (queryParams.donorName) { data = data.filter(item => item.donorName.includes(queryParams.donorName)) } if (queryParams.hospitalName) { data = data.filter(item => item.hospitalName.includes(queryParams.hospitalName)) } if (queryParams.assessmentStatus) { data = data.filter(item => item.assessmentStatus === queryParams.assessmentStatus) } // 模拟分页 const pageNum = queryParams.pageNum || 1 const pageSize = queryParams.pageSize || 10 const startIndex = (pageNum - 1) * pageSize const endIndex = startIndex + pageSize const pagedData = data.slice(startIndex, endIndex) return { code: 200, message: 'success', data: { total: data.length, rows: pagedData } } } // 模拟评估详情API export const getAssessment = (assessmentId) => { return new Promise((resolve) => { setTimeout(() => { const mockData = { code: 200, data: { caseInfo: { caseNo: 'CASE20241219001', donorName: '张三', gender: '0', age: 45, bloodType: 'A', idCardNo: '330102197812123456', diagnosis: '脑外伤导致脑死亡', hospitalName: '浙江大学医学院附属第一医院', doctorName: '李主任', applyTime: '2024-12-19 09:30:00', assessmentType: '1', assessmentStatus: '1' }, organAssessments: [ { organType: 'heart', department: '心脏外科', assessor: '王医生', assessmentStatus: '1', functionStatus: '1', assessmentOpinion: '心脏功能正常,符合捐献条件', assessmentTime: '2024-12-19 10:30:00', attachments: [ { id: 'file001', fileName: '心脏超声报告.pdf', fileType: 'pdf', fileSize: 2048000, fileUrl: '/api/files/heart-ultrasound.pdf', uploadTime: '2024-12-19 10:25:00' }, { id: 'file002', fileName: '心电图.jpg', fileType: 'jpg', fileSize: 1024000, fileUrl: '/api/files/ecg.jpg', uploadTime: '2024-12-19 10:20:00' } ] }, { organType: 'liver', department: '肝胆外科', assessor: '赵医生', assessmentStatus: '1', functionStatus: '2', assessmentOpinion: '肝功能轻度异常,需进一步评估', assessmentTime: '2024-12-19 11:15:00', attachments: [ { id: 'file003', fileName: '肝脏CT报告.pdf', fileType: 'pdf', fileSize: 3096000, fileUrl: '/api/files/liver-ct.pdf', uploadTime: '2024-12-19 11:10:00' } ] }, { organType: 'kidney', department: '肾内科', assessor: '钱医生', assessmentStatus: '0', functionStatus: '', assessmentOpinion: '', assessmentTime: '', attachments: [] } ] } }; resolve(mockData); }, 500); }); }; // 模拟器官评估更新API export const updateOrganAssessment = async (organData) => { await mockDelay(300) console.log('Mock API: 更新器官评估', organData) return { code: 200, message: '器官评估更新成功', data: organData } } // 模拟完成评估API export const completeAssessment = async (id) => { await mockDelay(500) console.log('Mock API: 完成评估', id) return { code: 200, message: '评估完成确认成功', data: { assessmentId: id, completeTime: new Date().toISOString() } } } // 模拟删除评估API export const delAssessment = async (ids) => { await mockDelay(400) console.log('Mock API: 删除评估', ids) return { code: 200, message: '删除成功', data: ids } } // 模拟导出评估API export const exportAssessment = async (queryParams) => { await mockDelay(1000) console.log('Mock API: 导出评估', queryParams) // 模拟文件下载 return { code: 200, message: '导出成功', data: { downloadUrl: '/mock/export/assessment.xlsx', fileSize: '2.5MB' } } }