src/api/business/insReport.js
@@ -27,12 +27,55 @@
}
// 单份报告下载
export function downloadReport(id, reportType) {
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 }
  })
}
@@ -44,7 +87,7 @@
    data: { id }
  })
}
// 报告退回到检验任务
// 报告退回到检验任务或报告审核
export function sendBackTask(query) {
  return request({
    url: '/insReport/sendBackTask',