完成查询asin开发
This commit is contained in:
@@ -581,6 +581,7 @@ export interface ProductRiskShopQueueItem {
|
||||
matchedUserId?: number;
|
||||
matchStatus?: string;
|
||||
matchMessage?: string;
|
||||
queryAsins?: QueryAsinCountryAsins[];
|
||||
}
|
||||
|
||||
export interface ProductRiskMatchShopsVo {
|
||||
@@ -1189,6 +1190,165 @@ export function deletePatrolDeleteHistory(resultId: number) {
|
||||
);
|
||||
}
|
||||
|
||||
export type QueryAsinCandidateVo = ProductRiskCandidateVo;
|
||||
export type QueryAsinDashboardVo = ProductRiskDashboardVo;
|
||||
export type QueryAsinShopQueueItem = ProductRiskShopQueueItem;
|
||||
|
||||
export interface QueryAsinCountryAsins {
|
||||
country: string;
|
||||
asins: string[];
|
||||
}
|
||||
|
||||
export interface QueryAsinTaskItem {
|
||||
shopName?: string;
|
||||
matched?: boolean;
|
||||
shopId?: string;
|
||||
platform?: string;
|
||||
companyName?: string;
|
||||
matchStatus?: string;
|
||||
matchMessage?: string;
|
||||
queryAsins: QueryAsinCountryAsins[];
|
||||
}
|
||||
|
||||
export interface QueryAsinHistoryItem {
|
||||
resultId?: number;
|
||||
taskId?: number;
|
||||
shopName?: string;
|
||||
shopId?: string;
|
||||
platform?: string;
|
||||
companyName?: string;
|
||||
matched?: boolean;
|
||||
matchStatus?: string;
|
||||
matchMessage?: string;
|
||||
taskStatus?: string;
|
||||
success?: boolean;
|
||||
error?: string;
|
||||
createdAt?: string;
|
||||
finishedAt?: string;
|
||||
outputFilename?: string;
|
||||
downloadUrl?: string;
|
||||
queryAsins: QueryAsinCountryAsins[];
|
||||
}
|
||||
|
||||
export interface QueryAsinHistoryVo {
|
||||
items: QueryAsinHistoryItem[];
|
||||
}
|
||||
|
||||
export interface QueryAsinTaskBatchVo {
|
||||
items: QueryAsinHistoryItem[];
|
||||
missingTaskIds: number[];
|
||||
}
|
||||
|
||||
export interface QueryAsinCreateTaskVo {
|
||||
taskId: number;
|
||||
items: QueryAsinHistoryItem[];
|
||||
}
|
||||
|
||||
export function listQueryAsinCandidates() {
|
||||
return unwrapJavaResponse(
|
||||
get<JavaApiResponse<QueryAsinCandidateVo[]>>(`${JAVA_API_PREFIX}/query-asin/candidates`, {
|
||||
params: { user_id: getCurrentUserId() },
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
export function addQueryAsinCandidate(shopName: string) {
|
||||
return unwrapJavaResponse(
|
||||
post<JavaApiResponse<QueryAsinCandidateVo>, { user_id: number; shop_name: string }>(
|
||||
`${JAVA_API_PREFIX}/query-asin/candidates`,
|
||||
{ user_id: getCurrentUserId(), shop_name: shopName },
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
export function deleteQueryAsinCandidate(id: number) {
|
||||
return unwrapJavaResponse(
|
||||
del<JavaApiResponse<null>>(`${JAVA_API_PREFIX}/query-asin/candidates/${id}`, {
|
||||
params: { user_id: getCurrentUserId() },
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
export function matchQueryAsinShops(shopNames: string[]) {
|
||||
return unwrapJavaResponse(
|
||||
post<JavaApiResponse<ProductRiskMatchShopsVo>, { user_id: number; shop_names: string[] }>(
|
||||
`${JAVA_API_PREFIX}/query-asin/match-shops`,
|
||||
{ user_id: getCurrentUserId(), shop_names: shopNames },
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
export function getQueryAsinDashboard() {
|
||||
return unwrapJavaResponse(
|
||||
get<JavaApiResponse<QueryAsinDashboardVo>>(`${JAVA_API_PREFIX}/query-asin/dashboard`, {
|
||||
params: { user_id: getCurrentUserId() },
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
export function getQueryAsinHistory() {
|
||||
return unwrapJavaResponse(
|
||||
get<JavaApiResponse<QueryAsinHistoryVo>>(`${JAVA_API_PREFIX}/query-asin/history`, {
|
||||
params: { user_id: getCurrentUserId() },
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
export function getQueryAsinTaskProgressBatch(taskIds: number[]) {
|
||||
return postTaskProgressBatch<QueryAsinTaskBatchVo>(
|
||||
`${JAVA_API_PREFIX}/query-asin/tasks/progress/batch`,
|
||||
taskIds,
|
||||
);
|
||||
}
|
||||
|
||||
export function createQueryAsinTask(items: QueryAsinTaskItem[]) {
|
||||
return unwrapJavaResponse(
|
||||
post<JavaApiResponse<QueryAsinCreateTaskVo>, { user_id: number; items: QueryAsinTaskItem[] }>(
|
||||
`${JAVA_API_PREFIX}/query-asin/tasks`,
|
||||
{ user_id: getCurrentUserId(), items },
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
export function submitQueryAsinTaskResult(
|
||||
taskId: number,
|
||||
payload: {
|
||||
shops: Array<{
|
||||
shopName: string;
|
||||
error?: string;
|
||||
queryAsins: QueryAsinCountryAsins[];
|
||||
shopDone?: boolean;
|
||||
submissionId?: string;
|
||||
chunkIndex?: number;
|
||||
chunkTotal?: number;
|
||||
}>;
|
||||
},
|
||||
) {
|
||||
return unwrapJavaResponse(
|
||||
post<JavaApiResponse<null>, typeof payload>(`${JAVA_API_PREFIX}/query-asin/tasks/${taskId}/result`, payload),
|
||||
);
|
||||
}
|
||||
|
||||
export function getQueryAsinResultDownloadUrl(resultId: number) {
|
||||
return getJavaDownloadUrl(`/query-asin/results/${resultId}/download`);
|
||||
}
|
||||
|
||||
export function deleteQueryAsinTask(taskId: number) {
|
||||
return unwrapJavaResponse(
|
||||
del<JavaApiResponse<null>>(`${JAVA_API_PREFIX}/query-asin/tasks/${taskId}`, {
|
||||
params: { user_id: getCurrentUserId() },
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
export function deleteQueryAsinHistory(resultId: number) {
|
||||
return unwrapJavaResponse(
|
||||
del<JavaApiResponse<null>>(`${JAVA_API_PREFIX}/query-asin/history/${resultId}`, {
|
||||
params: { user_id: getCurrentUserId() },
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
// ========== 跟价 ==========
|
||||
|
||||
export interface PriceTrackCandidateVo {
|
||||
|
||||
Reference in New Issue
Block a user