/** 查询 ASIN 导入添加适配(任务 72):multipart POST /import(file[+groupId]) → importId,及进度轮询。 */ import { http } from '@/api/http' import { parseQueryAsinImportProgress, parseQueryAsinImportStart, type QueryAsinImportProgress, } from './query-asin-import-model' export const QUERY_ASIN_IMPORT_ENDPOINT = '/api/admin/query-asins/import' /** 启动导入添加;groupId 为 Excel 未提供分组时的兜底,可选(>=1 才下发)。 * 参数名必须用 group_id:Java importExcel @RequestParam(name="group_id"),发 groupId 会被丢弃致兜底分组失效。 */ export async function startQueryAsinImport(file: File, groupId?: number): Promise { const form = new FormData() form.append('file', file, file.name) if (typeof groupId === 'number' && Number.isFinite(groupId) && groupId >= 1) { form.append('group_id', String(Math.floor(groupId))) } const { data } = await http.post(QUERY_ASIN_IMPORT_ENDPOINT, form) return parseQueryAsinImportStart(data) } /** 查询导入添加进度:GET /import/{importId}。 */ export async function fetchQueryAsinImportProgress(importId: string): Promise { const { data } = await http.get(`${QUERY_ASIN_IMPORT_ENDPOINT}/${importId}`) return parseQueryAsinImportProgress(data) }