| | |
| | | // 模拟捐献进程数据 |
| | | const mockDonationProcessData = { |
| | | caseInfo: { |
| | | id: '202312001', |
| | | caseNo: 'C202312001', |
| | | hospitalNo: 'D202312001', |
| | | donorName: '张三', |
| | | gender: '0', |
| | | id: "202512001", |
| | | caseNo: "C202512001", |
| | | hospitalNo: "D202512001", |
| | | donorName: "张三", |
| | | gender: "0", |
| | | age: 45, |
| | | bloodType: 'A', |
| | | diagnosis: '脑外伤', |
| | | status: 'in_progress', |
| | | createTime: '2023-12-01 08:00:00', |
| | | registrant: '李协调员', |
| | | currentStage: 'organ_allocation', |
| | | bloodType: "A", |
| | | diagnosis: "脑外伤", |
| | | status: "in_progress", |
| | | createTime: "2025-12-01 08:00:00", |
| | | registrant: "李协调员", |
| | | currentStage: "organ_allocation", |
| | | // 新增基本信息 |
| | | height: 175, |
| | | weight: 70, |
| | | bloodPressure: '120/80', |
| | | contactPerson: '张父', |
| | | contactPhone: '13800138000', |
| | | hospital: '北京协和医院', |
| | | department: '神经外科', |
| | | attendingDoctor: '王主任' |
| | | bloodPressure: "120/80", |
| | | contactPerson: "张父", |
| | | contactPhone: "13800138000", |
| | | hospital: "青岛大学附属医院", |
| | | department: "神经外科", |
| | | attendingDoctor: "王主任" |
| | | }, |
| | | processStages: [ |
| | | { |
| | | key: 'donor_maintenance', |
| | | name: '供者维护', |
| | | status: 'completed', |
| | | completeTime: '2023-12-01 10:00:00', |
| | | updateTime: '2023-12-01 10:00:00', |
| | | operator: '张医生', |
| | | key: "donor_maintenance", |
| | | name: "供者维护", |
| | | status: "completed", |
| | | completeTime: "2025-12-01 10:00:00", |
| | | updateTime: "2025-12-01 10:00:00", |
| | | operator: "张医生", |
| | | details: { |
| | | maintenanceRecords: 5, |
| | | lastCheckup: '2023-12-01 09:30:00', |
| | | lastCheckup: "2025-12-01 09:30:00", |
| | | vitalSigns: { |
| | | heartRate: 75, |
| | | bloodPressure: '118/76', |
| | | bloodPressure: "118/76", |
| | | temperature: 36.5, |
| | | oxygenSaturation: 98 |
| | | }, |
| | | medications: [ |
| | | { name: '多巴胺', dosage: '5μg/kg/min', time: '2023-12-01 08:00:00' }, |
| | | { name: '甘露醇', dosage: '125ml', time: '2023-12-01 09:00:00' } |
| | | { name: "多巴胺", dosage: "5μg/kg/min", time: "2025-12-01 08:00:00" }, |
| | | { name: "甘露醇", dosage: "125ml", time: "2025-12-01 09:00:00" } |
| | | ], |
| | | labResults: { |
| | | wbc: 8.5, |
| | |
| | | } |
| | | }, |
| | | { |
| | | key: 'medical_assessment', |
| | | name: '医学评估', |
| | | status: 'completed', |
| | | completeTime: '2023-12-02 14:30:00', |
| | | updateTime: '2023-12-02 14:30:00', |
| | | operator: '李主任', |
| | | details: { |
| | | assessmentItems: [ |
| | | { name: '神经系统评估', result: '脑死亡确认', status: 'completed' }, |
| | | { name: '心血管系统评估', result: '功能正常', status: 'completed' }, |
| | | { name: '呼吸系统评估', result: '呼吸机维持', status: 'completed' }, |
| | | { name: '肝肾功能评估', result: '功能良好', status: 'completed' }, |
| | | { name: '感染性疾病筛查', result: '阴性', status: 'completed' } |
| | | ], |
| | | imagingResults: { |
| | | ctBrain: '脑水肿,脑干反射消失', |
| | | chestXRay: '双肺清晰', |
| | | abdominalUS: '肝胆胰脾未见异常' |
| | | }, |
| | | conclusion: '符合器官捐献医学标准', |
| | | contraindications: '无绝对禁忌症' |
| | | } |
| | | }, |
| | | { |
| | | key: 'death_judgment', |
| | | name: '死亡判定', |
| | | status: 'completed', |
| | | completeTime: '2023-12-03 09:15:00', |
| | | updateTime: '2023-12-03 09:15:00', |
| | | operator: '王医生', |
| | | details: { |
| | | judgmentType: '脑死亡判定', |
| | | judgmentTime: '2023-12-03 09:00:00', |
| | | doctors: ['张主任', '王医生'], |
| | | testResults: [ |
| | | { test: '自主呼吸测试', result: '无自主呼吸', time: '2023-12-03 08:30:00' }, |
| | | { test: '瞳孔对光反射', result: '反射消失', time: '2023-12-03 08:45:00' }, |
| | | { test: '脑干听觉诱发电位', result: '脑干功能丧失', time: '2023-12-03 09:00:00' } |
| | | ], |
| | | certificateNo: 'SW20231203001', |
| | | legalDocuments: ['死亡证明书', '脑死亡判定书'] |
| | | } |
| | | }, |
| | | { |
| | | key: 'donation_confirm', |
| | | name: '捐献确认', |
| | | status: 'completed', |
| | | completeTime: '2023-12-03 11:00:00', |
| | | updateTime: '2023-12-03 11:00:00', |
| | | operator: '赵协调员', |
| | | key: "donation_confirm", |
| | | name: "捐献意愿", |
| | | status: "completed", |
| | | completeTime: "2025-12-03 11:00:00", |
| | | updateTime: "2025-12-03 11:00:00", |
| | | operator: "赵协调员", |
| | | details: { |
| | | familyConsent: { |
| | | mainRelative: '张父', |
| | | relationship: '父子', |
| | | consentTime: '2023-12-03 10:45:00', |
| | | consentForm: '已签署', |
| | | witness: '李护士' |
| | | mainRelative: "张父", |
| | | relationship: "父子", |
| | | consentTime: "2025-12-03 10:45:00", |
| | | consentForm: "已签署", |
| | | witness: "李护士" |
| | | }, |
| | | donationType: '多器官捐献', |
| | | organs: ['肝脏', '肾脏', '心脏', '角膜'], |
| | | legalDocuments: [ |
| | | '器官捐献同意书', |
| | | '家属关系证明', |
| | | '医疗免责声明' |
| | | ], |
| | | coordinator: '赵协调员', |
| | | confirmationTime: '2023-12-03 11:00:00' |
| | | donationType: "多器官捐献", |
| | | organs: ["肝脏", "肾脏", "心脏", "角膜"], |
| | | legalDocuments: ["器官捐献同意书", "家属关系证明", "医疗免责声明"], |
| | | coordinator: "赵协调员", |
| | | confirmationTime: "2025-12-03 11:00:00" |
| | | } |
| | | }, |
| | | { |
| | | key: 'ethical_review', |
| | | name: '伦理审查', |
| | | status: 'completed', |
| | | completeTime: '2023-12-03 15:20:00', |
| | | updateTime: '2023-12-03 15:20:00', |
| | | operator: '伦理委员会', |
| | | key: "medical_assessment", |
| | | name: "医学评估", |
| | | status: "completed", |
| | | completeTime: "2025-12-02 14:30:00", |
| | | updateTime: "2025-12-02 14:30:00", |
| | | operator: "李主任", |
| | | details: { |
| | | committee: '医院伦理审查委员会', |
| | | meetingTime: '2023-12-03 14:00:00', |
| | | members: ['张教授', '李主任', '王医生', '赵委员', '钱专家'], |
| | | assessmentItems: [ |
| | | { name: "神经系统评估", result: "脑死亡确认", status: "completed" }, |
| | | { name: "心血管系统评估", result: "功能正常", status: "completed" }, |
| | | { name: "呼吸系统评估", result: "呼吸机维持", status: "completed" }, |
| | | { name: "肝肾功能评估", result: "功能良好", status: "completed" }, |
| | | { name: "感染性疾病筛查", result: "阴性", status: "completed" } |
| | | ], |
| | | imagingResults: { |
| | | ctBrain: "脑水肿,脑干反射消失", |
| | | chestXRay: "双肺清晰", |
| | | abdominalUS: "肝胆胰脾未见异常" |
| | | }, |
| | | conclusion: "符合器官捐献医学标准", |
| | | contraindications: "无绝对禁忌症" |
| | | } |
| | | }, |
| | | |
| | | { |
| | | key: "death_judgment", |
| | | name: "死亡判定", |
| | | status: "completed", |
| | | completeTime: "2025-12-03 09:15:00", |
| | | updateTime: "2025-12-03 09:15:00", |
| | | operator: "王医生", |
| | | details: { |
| | | judgmentType: "脑死亡判定", |
| | | judgmentTime: "2025-12-03 09:00:00", |
| | | doctors: ["张主任", "王医生"], |
| | | testResults: [ |
| | | { |
| | | test: "自主呼吸测试", |
| | | result: "无自主呼吸", |
| | | time: "2025-12-03 08:30:00" |
| | | }, |
| | | { |
| | | test: "瞳孔对光反射", |
| | | result: "反射消失", |
| | | time: "2025-12-03 08:45:00" |
| | | }, |
| | | { |
| | | test: "脑干听觉诱发电位", |
| | | result: "脑干功能丧失", |
| | | time: "2025-12-03 09:00:00" |
| | | } |
| | | ], |
| | | certificateNo: "SW20251203001", |
| | | legalDocuments: ["死亡证明书", "脑死亡判定书"] |
| | | } |
| | | }, |
| | | { |
| | | key: "ethical_review", |
| | | name: "伦理审查", |
| | | status: "in_progress", |
| | | completeTime: "2025-12-03 15:20:00", |
| | | updateTime: "2025-12-03 15:20:00", |
| | | operator: "伦理委员会", |
| | | details: { |
| | | committee: "医院伦理审查委员会", |
| | | meetingTime: "2025-12-03 14:00:00", |
| | | members: ["张教授", "李主任", "王医生", "赵委员", "钱专家"], |
| | | reviewItems: [ |
| | | { item: '捐献意愿真实性', result: '确认真实', vote: '全票通过' }, |
| | | { item: '医学评估准确性', result: '确认准确', vote: '全票通过' }, |
| | | { item: '法律文件完整性', result: '确认完整', vote: '全票通过' } |
| | | { item: "捐献意愿真实性", result: "确认真实", vote: "全票通过" }, |
| | | { item: "医学评估准确性", result: "确认准确", vote: "全票通过" }, |
| | | { item: "法律文件完整性", result: "确认完整", vote: "全票通过" } |
| | | ], |
| | | conclusion: '符合伦理要求,同意进行器官捐献', |
| | | resolutionNo: 'LL20231203001' |
| | | conclusion: "符合伦理要求,同意进行器官捐献", |
| | | resolutionNo: "LL20251203001" |
| | | } |
| | | }, |
| | | { |
| | | key: 'organ_allocation', |
| | | name: '器官分配', |
| | | status: 'in_progress', |
| | | updateTime: '2023-12-04 10:00:00', |
| | | operator: '分配系统', |
| | | key: "organ_allocation", |
| | | name: "器官分配", |
| | | status: "pending", |
| | | updateTime: "2025-12-04 10:00:00", |
| | | operator: "分配系统", |
| | | details: { |
| | | allocationStartTime: '2023-12-04 09:00:00', |
| | | allocationSystem: '中国人体器官分配与共享计算机系统', |
| | | allocationStartTime: "2025-12-04 09:00:00", |
| | | allocationSystem: "中国人体器官分配与共享计算机系统", |
| | | organs: [ |
| | | { |
| | | organ: '肝脏', |
| | | status: '分配中', |
| | | organ: "肝脏", |
| | | status: "分配中", |
| | | matchScore: 95, |
| | | recommendedRecipient: '王先生', |
| | | recommendedRecipient: "王先生", |
| | | recipientAge: 45, |
| | | recipientBloodType: 'A', |
| | | hospital: '北京协和医院', |
| | | urgency: '紧急' |
| | | recipientBloodType: "A", |
| | | hospital: "青岛大学附属医院", |
| | | urgency: "紧急" |
| | | }, |
| | | { |
| | | organ: '肾脏', |
| | | status: '匹配完成', |
| | | organ: "肾脏", |
| | | status: "匹配完成", |
| | | matchScore: 92, |
| | | recommendedRecipient: '李女士', |
| | | recommendedRecipient: "李女士", |
| | | recipientAge: 38, |
| | | recipientBloodType: 'A', |
| | | hospital: '上海瑞金医院', |
| | | urgency: '高' |
| | | recipientBloodType: "A", |
| | | hospital: "青岛市市立医院", |
| | | urgency: "高" |
| | | }, |
| | | { |
| | | organ: '心脏', |
| | | status: '待分配', |
| | | organ: "心脏", |
| | | status: "待分配", |
| | | matchScore: 88, |
| | | recommendedRecipient: '陈先生', |
| | | recommendedRecipient: "陈先生", |
| | | recipientAge: 52, |
| | | recipientBloodType: 'O', |
| | | hospital: '广州中山医院', |
| | | urgency: '紧急' |
| | | recipientBloodType: "O", |
| | | hospital: "山东大学齐鲁医院", |
| | | urgency: "紧急" |
| | | } |
| | | ], |
| | | allocationFactors: [ |
| | | { factor: '病情危重程度', weight: 35 }, |
| | | { factor: '组织配型匹配', weight: 25 }, |
| | | { factor: '等待时间', weight: 15 }, |
| | | { factor: '地理因素', weight: 10 }, |
| | | { factor: '年龄因素', weight: 15 } |
| | | { factor: "病情危重程度", weight: 35 }, |
| | | { factor: "组织配型匹配", weight: 25 }, |
| | | { factor: "等待时间", weight: 15 }, |
| | | { factor: "地理因素", weight: 10 }, |
| | | { factor: "年龄因素", weight: 15 } |
| | | ] |
| | | } |
| | | }, |
| | | { |
| | | key: 'organ_procurement', |
| | | name: '器官获取', |
| | | status: 'pending', |
| | | updateTime: '2023-12-03 16:00:00', |
| | | operator: '待分配', |
| | | key: "organ_procurement", |
| | | name: "器官获取", |
| | | status: "pending", |
| | | updateTime: "2025-12-03 16:00:00", |
| | | operator: "待分配", |
| | | details: { |
| | | scheduledTime: '2023-12-04 14:00:00', |
| | | operationRoom: '手术室一号', |
| | | scheduledTime: "2025-12-04 14:00:00", |
| | | operationRoom: "手术室一号", |
| | | surgicalTeam: { |
| | | surgeon: '待分配', |
| | | assistant: '待分配', |
| | | anesthesiologist: '待分配', |
| | | nurse: '待分配' |
| | | surgeon: "待分配", |
| | | assistant: "待分配", |
| | | anesthesiologist: "待分配", |
| | | nurse: "待分配" |
| | | }, |
| | | preservationPlan: { |
| | | method: '低温机械灌注', |
| | | solution: 'UW保存液', |
| | | temperature: '4°C' |
| | | method: "低温机械灌注", |
| | | solution: "UW保存液", |
| | | temperature: "4°C" |
| | | }, |
| | | organs: [ |
| | | { |
| | | organ: '肝脏', |
| | | organ: "肝脏", |
| | | planned: true, |
| | | preservation: '待准备', |
| | | estimatedTime: '4小时' |
| | | preservation: "待准备", |
| | | estimatedTime: "4小时" |
| | | }, |
| | | { |
| | | organ: '肾脏', |
| | | organ: "肾脏", |
| | | planned: true, |
| | | preservation: '待准备', |
| | | estimatedTime: '3小时' |
| | | preservation: "待准备", |
| | | estimatedTime: "3小时" |
| | | }, |
| | | { |
| | | organ: '心脏', |
| | | organ: "心脏", |
| | | planned: true, |
| | | preservation: '待准备', |
| | | estimatedTime: '5小时' |
| | | preservation: "待准备", |
| | | estimatedTime: "5小时" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | { |
| | | key: 'organ_utilization', |
| | | name: '器官利用', |
| | | status: 'pending', |
| | | updateTime: '2023-12-03 16:00:00', |
| | | operator: '待分配', |
| | | key: "organ_utilization", |
| | | name: "器官利用", |
| | | status: "pending", |
| | | updateTime: "2025-12-03 16:00:00", |
| | | operator: "待分配", |
| | | details: { |
| | | transplantCenters: [ |
| | | { |
| | | hospital: '北京协和医院', |
| | | organ: '肝脏', |
| | | recipient: '王先生', |
| | | scheduledTime: '2023-12-04 18:00:00', |
| | | surgicalTeam: '待确认' |
| | | hospital: "青岛大学附属医院", |
| | | organ: "肝脏", |
| | | recipient: "王先生", |
| | | scheduledTime: "2025-12-04 18:00:00", |
| | | surgicalTeam: "待确认" |
| | | }, |
| | | { |
| | | hospital: '上海瑞金医院', |
| | | organ: '肾脏', |
| | | recipient: '李女士', |
| | | scheduledTime: '2023-12-04 19:00:00', |
| | | surgicalTeam: '待确认' |
| | | hospital: "青岛市市立医院", |
| | | organ: "肾脏", |
| | | recipient: "李女士", |
| | | scheduledTime: "2025-12-04 19:00:00", |
| | | surgicalTeam: "待确认" |
| | | } |
| | | ], |
| | | followupPlan: { |
| | | frequency: '术后1个月、3个月、6个月、1年', |
| | | items: ['肝功能检查', '免疫抑制剂浓度', '影像学检查'], |
| | | coordinator: '待分配' |
| | | frequency: "术后1个月、3个月、6个月、1年", |
| | | items: ["肝功能检查", "免疫抑制剂浓度", "影像学检查"], |
| | | coordinator: "待分配" |
| | | }, |
| | | qualityMetrics: { |
| | | expectedSurvivalRate: 92, |
| | | complicationRisk: '中等', |
| | | complicationRisk: "中等", |
| | | successRate: 95 |
| | | } |
| | | } |
| | |
| | | // 新增时间线事件 |
| | | timelineEvents: [ |
| | | { |
| | | time: '2023-12-01 08:00:00', |
| | | event: '案例登记', |
| | | operator: '李协调员', |
| | | description: '捐献案例正式登记启动' |
| | | time: "2025-12-01 08:00:00", |
| | | event: "案例登记", |
| | | operator: "李协调员", |
| | | description: "捐献案例正式登记启动" |
| | | }, |
| | | { |
| | | time: '2023-12-01 10:00:00', |
| | | event: '供者维护完成', |
| | | operator: '张医生', |
| | | description: '完成供者生命体征维护和医疗管理' |
| | | time: "2025-12-01 10:00:00", |
| | | event: "供者维护完成", |
| | | operator: "张医生", |
| | | description: "完成供者生命体征维护和医疗管理" |
| | | }, |
| | | { |
| | | time: '2023-12-02 14:30:00', |
| | | event: '医学评估完成', |
| | | operator: '李主任', |
| | | description: '全面医学评估确认符合捐献标准' |
| | | time: "2025-12-02 14:30:00", |
| | | event: "医学评估完成", |
| | | operator: "李主任", |
| | | description: "全面医学评估确认符合捐献标准" |
| | | }, |
| | | { |
| | | time: '2023-12-03 09:15:00', |
| | | event: '死亡判定完成', |
| | | operator: '王医生', |
| | | description: '脑死亡判定程序完成' |
| | | time: "2025-12-03 09:15:00", |
| | | event: "死亡判定完成", |
| | | operator: "王医生", |
| | | description: "脑死亡判定程序完成" |
| | | }, |
| | | { |
| | | time: '2023-12-03 11:00:00', |
| | | event: '捐献确认完成', |
| | | operator: '赵协调员', |
| | | description: '家属签署捐献同意书' |
| | | time: "2025-12-03 11:00:00", |
| | | event: "捐献确认完成", |
| | | operator: "赵协调员", |
| | | description: "家属签署捐献同意书" |
| | | }, |
| | | { |
| | | time: '2023-12-03 15:20:00', |
| | | event: '伦理审查通过', |
| | | operator: '伦理委员会', |
| | | description: '伦理审查委员会全票通过' |
| | | time: "2025-12-03 15:20:00", |
| | | event: "伦理审查通过", |
| | | operator: "伦理委员会", |
| | | description: "伦理审查委员会全票通过" |
| | | } |
| | | ], |
| | | // 新增统计信息 |
| | |
| | | totalStages: 8, |
| | | completedStages: 5, |
| | | completionRate: 62.5, |
| | | timeElapsed: '2天6小时', |
| | | estimatedCompletion: '2023-12-04 20:00:00', |
| | | timeElapsed: "2天6小时", |
| | | estimatedCompletion: "2025-12-04 20:00:00", |
| | | organsToDonate: 4, |
| | | potentialRecipients: 3 |
| | | } |
| | | }; |
| | | |
| | | // 获取捐献进程详情 |
| | | export const getDonationProcessDetail = async (caseId) => { |
| | | export const getDonationProcessDetail = async caseId => { |
| | | await new Promise(resolve => setTimeout(resolve, 500)); |
| | | |
| | | // 模拟根据caseId返回不同数据 |
| | |
| | | |
| | | return { |
| | | code: 200, |
| | | message: 'success', |
| | | message: "success", |
| | | data: data |
| | | }; |
| | | }; |
| | |
| | | await new Promise(resolve => setTimeout(resolve, 300)); |
| | | |
| | | // 模拟更新逻辑 |
| | | const stage = mockDonationProcessData.processStages.find(s => s.key === stageKey); |
| | | const stage = mockDonationProcessData.processStages.find( |
| | | s => s.key === stageKey |
| | | ); |
| | | if (stage) { |
| | | stage.status = status; |
| | | stage.updateTime = new Date().toISOString().replace('T', ' ').substring(0, 19); |
| | | stage.updateTime = new Date() |
| | | .toISOString() |
| | | .replace("T", " ") |
| | | .substring(0, 19); |
| | | |
| | | if (status === 'completed') { |
| | | if (status === "completed") { |
| | | stage.completeTime = stage.updateTime; |
| | | } |
| | | } |
| | | |
| | | return { |
| | | code: 200, |
| | | message: '阶段状态更新成功', |
| | | message: "阶段状态更新成功", |
| | | data: { |
| | | caseId, |
| | | stageKey, |
| | |
| | | export const getStageDetail = async (caseId, stageKey) => { |
| | | await new Promise(resolve => setTimeout(resolve, 200)); |
| | | |
| | | const stage = mockDonationProcessData.processStages.find(s => s.key === stageKey); |
| | | const stage = mockDonationProcessData.processStages.find( |
| | | s => s.key === stageKey |
| | | ); |
| | | if (!stage) { |
| | | return { |
| | | code: 404, |
| | | message: '阶段不存在', |
| | | message: "阶段不存在", |
| | | data: null |
| | | }; |
| | | } |
| | | |
| | | return { |
| | | code: 200, |
| | | message: 'success', |
| | | message: "success", |
| | | data: stage |
| | | }; |
| | | }; |
| | | |
| | | // 获取时间线事件 |
| | | export const getTimelineEvents = async (caseId) => { |
| | | export const getTimelineEvents = async caseId => { |
| | | await new Promise(resolve => setTimeout(resolve, 150)); |
| | | |
| | | return { |
| | | code: 200, |
| | | message: 'success', |
| | | message: "success", |
| | | data: mockDonationProcessData.timelineEvents |
| | | }; |
| | | }; |
| | | |
| | | // 获取案例统计信息 |
| | | export const getCaseStatistics = async (caseId) => { |
| | | export const getCaseStatistics = async caseId => { |
| | | await new Promise(resolve => setTimeout(resolve, 100)); |
| | | |
| | | return { |
| | | code: 200, |
| | | message: 'success', |
| | | message: "success", |
| | | data: mockDonationProcessData.statistics |
| | | }; |
| | | }; |
| | |
| | | |
| | | return { |
| | | code: 200, |
| | | message: '审核提交成功', |
| | | message: "审核提交成功", |
| | | data: { |
| | | caseId, |
| | | stageKey, |
| | | reviewId: `REV${Date.now()}`, |
| | | submitTime: new Date().toISOString().replace('T', ' ').substring(0, 19), |
| | | submitTime: new Date() |
| | | .toISOString() |
| | | .replace("T", " ") |
| | | .substring(0, 19), |
| | | ...reviewData |
| | | } |
| | | }; |
| | |
| | | |
| | | return { |
| | | code: 200, |
| | | message: '文件上传成功', |
| | | message: "文件上传成功", |
| | | data: { |
| | | caseId, |
| | | stageKey, |
| | | fileId: `FILE${Date.now()}`, |
| | | fileName: fileInfo.name, |
| | | fileSize: fileInfo.size, |
| | | uploadTime: new Date().toISOString().replace('T', ' ').substring(0, 19), |
| | | uploadTime: new Date() |
| | | .toISOString() |
| | | .replace("T", " ") |
| | | .substring(0, 19), |
| | | url: `/files/${caseId}/${stageKey}/${fileInfo.name}` |
| | | } |
| | | }; |