WXL
3 天以前 1a1df739a5f866de1014762167ac9ecb8e06595f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
// 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 = async (id) => {
  await mockDelay(500)
 
  console.log('Mock API: 获取评估详情', id)
 
  // 根据ID返回不同的模拟数据
  const detailData = JSON.parse(JSON.stringify(assessmentDetailData))
 
  if (id === '20241220002') {
    detailData.data.caseInfo.donorName = '李四'
    detailData.data.caseInfo.caseNo = 'CASE20241220002'
    detailData.data.organAssessments[0].assessor = '张医生'
  } else if (id === '20241220003') {
    detailData.data.caseInfo.donorName = '王五'
    detailData.data.caseInfo.caseNo = 'CASE20241220003'
    detailData.data.organAssessments[0].assessor = '陈医生'
  }
 
  return detailData
}
 
// 模拟器官评估更新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'
    }
  }
}