feat(worker-platform): 支持客户退款冲正并关闭订单

This commit is contained in:
yml2213
2026-11-05 17:15:41 +08:00
parent b72d5877da
commit fc928c6b18
15 changed files with 2129 additions and 6 deletions
@@ -54,6 +54,24 @@ type WorkOrderVoucherConsumeResult = {
export type AdminLeaderboardPeriod = 'all' | 'daily' | 'weekly' | 'monthly'
export type CustomerRefundPreview = {
workOrderId: number
orderId: number
provider: string
platform: string
platformOrderId: string
workOrderStatus: string
remainingFen: number
itemCount: number
workOrderCount: number
externalAfterSaleId: string
platformUpdateTime: string
platformAmountFen: number
platformState: string
canExecute: boolean
notes: string[]
}
export type AdminWorkerLeaderboardEntry = {
rank: number
workerId: number
@@ -855,6 +873,29 @@ export function deleteAdminWorkOrder(workOrderId: number) {
return apiDelete<{ deleted: boolean }>(`/api/v1/admin/worker-platform/orders/${workOrderId}`)
}
export function previewAdminCustomerRefund(workOrderId: number) {
return apiPost<CustomerRefundPreview>(
`/api/v1/admin/worker-platform/orders/${workOrderId}/customer-refund/preview`,
)
}
export function executeAdminCustomerRefund(
workOrderId: number,
payload: { reason: string; note?: string },
) {
return apiPost<{
idempotent: boolean
operationId: number
localRefundRecorded?: boolean
workOrderId?: number
orderId?: number
cancelledWorkOrders?: number
cancelledShares?: number
releasedDepositFen?: number
closedTaskCount?: number
}>(`/api/v1/admin/worker-platform/orders/${workOrderId}/customer-refund`, payload)
}
export function unpublishAdminWorkOrder(workOrderId: number) {
return apiPost<{ order: WorkOrder }>(
`/api/v1/admin/worker-platform/orders/${workOrderId}/unpublish`,