yeg
2026-09-06 23016079e01cd91d53f1255bd62b4e7b10a9450e
src/api/compareReports.ts
@@ -9,6 +9,7 @@
  createdAt: number
}
/** 读取授权用户可见的全部报表摘要,筛选和分页由现有列表处理。 */
export async function listCompareReports() {
  return (await request<ApiResponse & { rows: CompareReportSummary[] }>('/system/compare-report/list')).rows
}
@@ -60,23 +61,28 @@
  displayUnits: Record<string, string>
}
/** 按报表新增权限读取检测完成测试中的可选来源。 */
export async function getCompareSources() {
  return (await request<ApiResponse & { data: CompareCandidate[] }>('/system/compare-report/sources')).data
}
/** 由后端校验所选范围并返回当前有效测量与业务字段。 */
export async function previewCompareReport(selections: CompareSelection[]) {
  return (await request<ApiResponse & { data: CompareItem[] }>('/system/compare-report/preview', {
    method: 'POST', body: JSON.stringify(selections),
  })).data
}
/** 提交来源身份和展示设置;保存时由后端重读测量并生成独立首版。 */
export async function createCompareReport(data: CreateCompareReport) {
  return (await request<ApiResponse & { data: SavedCompareReport }>('/system/compare-report', {
    method: 'POST', body: JSON.stringify(data),
  })).data
}
/** 读取已保存快照,不依赖来源测试仍存在或保持原值。 */
export async function getCompareReport(id: number) {
  return (await request<ApiResponse & { data: SavedCompareReport }>(`/system/compare-report/${id}`)).data
}
/** 按完整所选范围区分比对项,同一电池的不同循环或工步不合并。 */
export function compareSelectionKey(item: CompareSelection) {
  return `${item.testId}|${item.testBatteryId}|${item.cycleNo}|${item.stepNo ?? ''}|${item.logicalNo ?? ''}`
}