// 模拟捐献确认API const confirmationData = { rows: [ { id: 1, caseNo: 'QJ202312001', donorName: '张某某', gender: '0', age: '45', diagnosis: '重型颅脑损伤', hospitalName: '北京市第一人民医院', confirmationStatus: '0', confirmationTime: '', assignee: '王医生', coordinator1: '协调员A', coordinator2: '协调员B', familyRemark: '' }, { id: 2, caseNo: 'QJ202312002', donorName: '李某某', gender: '1', age: '32', diagnosis: '脑出血', hospitalName: '上海市中心医院', confirmationStatus: '1', confirmationTime: '2023-12-01 14:30:00', assignee: '李医生', coordinator1: '协调员C', coordinator2: '协调员D', familyRemark: '家属同意捐献,已签署相关文件' }, { id: 3, caseNo: 'QJ202312003', donorName: '王某某', gender: '0', age: '58', diagnosis: '心脏骤停后脑损伤', hospitalName: '广州市人民医院', confirmationStatus: '2', confirmationTime: '2023-12-02 10:15:00', assignee: '张医生', coordinator1: '协调员E', coordinator2: '协调员F', familyRemark: '家属经考虑后决定不同意捐献' } ], total: 3 }; // 获取捐献确认列表 export function listConfirmation(params) { return new Promise((resolve) => { setTimeout(() => { const { pageNum, pageSize, donorName, hospitalName, confirmationStatus } = params; let filteredData = confirmationData.rows; // 模拟筛选 if (donorName) { filteredData = filteredData.filter(item => item.donorName.includes(donorName) ); } if (hospitalName) { filteredData = filteredData.filter(item => item.hospitalName.includes(hospitalName) ); } if (confirmationStatus) { filteredData = filteredData.filter(item => item.confirmationStatus === confirmationStatus ); } const start = (pageNum - 1) * pageSize; const end = start + pageSize; const pageData = filteredData.slice(start, end); resolve({ code: 200, data: { rows: pageData, total: filteredData.length } }); }, 500); }); } // 获取捐献确认详情 export function getConfirmationDetail(id) { return new Promise((resolve) => { setTimeout(() => { const detail = confirmationData.rows.find(item => item.id == id); resolve({ code: 200, data: detail || {} }); }, 300); }); } // 更新捐献确认信息 export function updateConfirmation(data) { return new Promise((resolve) => { setTimeout(() => { const index = confirmationData.rows.findIndex(item => item.id === data.id); if (index !== -1) { confirmationData.rows[index] = { ...confirmationData.rows[index], ...data }; } resolve({ code: 200, message: '更新成功' }); }, 300); }); } // 删除捐献确认 export function delConfirmation(ids) { return new Promise((resolve) => { setTimeout(() => { confirmationData.rows = confirmationData.rows.filter( item => !ids.includes(item.id) ); confirmationData.total = confirmationData.rows.length; resolve({ code: 200, message: '删除成功' }); }, 300); }); } // 导出捐献确认数据 export function exportConfirmation(params) { return new Promise((resolve) => { setTimeout(() => { resolve({ code: 200, data: { downloadUrl: '/download/confirmation_export.xlsx' }, message: '导出成功' }); }, 1000); }); } // 附件相关API接口 export const attachmentApi = { // 获取案例附件列表 getAttachments(caseId) { return request.get(`/api/attachments/case/${caseId}`); }, // 上传附件 uploadAttachment(data) { const formData = new FormData(); formData.append('file', data.file); formData.append('caseId', data.caseId); formData.append('type', data.type); return request.post('/api/attachments/upload', formData, { headers: { 'Content-Type': 'multipart/form-data' } }); }, // 删除附件 deleteAttachment(attachmentId) { return request.delete(`/api/attachments/${attachmentId}`); }, // 批量保存附件信息 saveAttachments(attachments) { return request.post('/api/attachments/batch-save', attachments); } };