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
122
123
124
125
126
127
128
129
130
131
// 报告编制页面相关接口
import request from '@/utils/request'
 
// 报告还原
export function upReportUrl(query) {
  return request({
    url: '/insReport/upReportUrl',
    method: 'post',
    data: query
  })
}
// 查询检验报告数据
export function pageInsReport(query) {
  return request({
    url: '/insReport/pageInsReport',
    method: 'get',
    params: query
  })
}
// 报告批量下载
export function downAll(query) {
  return request({
    url: '/insReport/downAll',
    method: 'get',
    params: query
  })
}
 
// 单份报告下载
export function downloadReport(id, reportType, signal) {
  return request({
    url: '/insReport/download',
    method: 'get',
    params: { id, reportType },
    signal,
    responseType: 'blob'
  })
}
 
// 按 Word 版式生成分页 PDF,沿用报告下载的数据范围。
export function previewReportPdf(id, reportType, signal) {
  return request({
    url: '/insReport/preview', method: 'get',
    params: { id, reportType }, signal, responseType: 'blob'
  })
}
 
// 获取审核阶段的 Word 在线编辑配置
export function getReportEditConfig(id, reportType) {
  return request({
    url: '/insReport/editor/config',
    method: 'get',
    params: { id, reportType }
  })
}
 
// 浏览器读取二进制,不触发用户下载。
export function getReportEditDocument(token, onDownloadProgress) {
  return request({
    url: '/insReport/editor/document',
    method: 'get',
    params: { token },
    responseType: 'blob',
    onDownloadProgress
  })
}
 
// 编辑器导出的 DOCX 直接提交 LIMS,用户无需下载、选文件或手动上传。
export function saveReportEditDocument(token, version, blob) {
  const data = new FormData()
  data.append('token', token)
  data.append('version', version)
  data.append('file', blob, 'report.docx')
  return request({
    url: '/insReport/editor/document',
    method: 'post',
    data,
    headers: { 'Content-Type': 'multipart/form-data', repeatSubmit: false }
  })
}
 
// 重新生成报告
export function regenerateReport(id) {
  return request({
    url: '/insReport/regenerate',
    method: 'post',
    data: { id }
  })
}
// 报告退回到检验任务或报告审核
export function sendBackTask(query) {
  return request({
    url: '/insReport/sendBackTask',
    method: 'post',
    data: query
  })
}
// 报告审核
export function examineReport(query) {
  return request({
    url: '/insReport/examineReport',
    method: 'post',
    data: query
  })
}
// 报告提交
export function writeReport(query) {
  return request({
    url: '/insReport/writeReport',
    method: 'post',
    data: query
  })
}
// 报告批准
export function ratifyReport(query) {
  return request({
    url: '/insReport/ratifyReport',
    method: 'post',
    data: query
  })
}
 
// 报告导出
export function reportAllExport(query) {
  return request({
    url: '/insReport/reportAllExport',
    method: 'get',
    params: query,
    responseType: "blob"
  })
}