Files
photo-live/apps/admin/src/api/userSync.ts
T
2026-09-20 20:26:53 +08:00

37 lines
1.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* 用户同步管理接口(对齐 @photo/contracts tags [admin]:getUserSyncStatus /
* listUserSyncRuns / triggerUserSyncRun / listUserSyncErrors)
*
* - status/runs/errors 为纯读;runs 为 startedAt+ID 倒序键集游标
* - POST runs → 202 受理(异步执行;运行中批次复用其 runId),结果经
* status/runs 轮询查询——页面侧的等待/轮询逻辑见 utils/system/syncPolling
* - errors 按 runId 查单批次坏行明细(未知批次=空数组,契约无 404)
*/
import request from '@/utils/http'
/** 同步引擎状态 + 最近批次计数 */
export function fetchUserSyncStatus() {
return request.get<Api.UserSync.Status>({ url: '/v1/admin/user-sync/status' })
}
/** 运行历史(游标分页) */
export function fetchUserSyncRuns(params: { cursor?: string; limit?: number }) {
return request.get<Api.UserSync.RunListResponse>({
url: '/v1/admin/user-sync/runs',
params
})
}
/** 手动触发同步补拉(202 受理;与定时共用互斥锁) */
export function fetchTriggerUserSyncRun() {
return request.post<Api.UserSync.RunCreatedResponse>({ url: '/v1/admin/user-sync/runs' })
}
/** 单批次失败明细(runId 必填) */
export function fetchUserSyncErrors(runId: string) {
return request.get<Api.UserSync.ErrorListResponse>({
url: '/v1/admin/user-sync/errors',
params: { runId }
})
}