新增打手撤单审核

This commit is contained in:
yml2213
2026-08-20 19:43:03 +08:00
parent d76d1e8d90
commit e504b3a207
20 changed files with 1331 additions and 8 deletions
@@ -13,6 +13,7 @@ import type {
WorkProductMatchLog,
WorkerFinanceConfig,
WorkerFinanceRequest,
WorkerCancelRequest,
WorkerPlatformNotificationConfig,
WorkerProductMatchConfig,
WorkerLevel,
@@ -39,6 +40,28 @@ export function fetchAdminWorkerPlatformSummary() {
}>('/api/v1/admin/worker-platform/summary')
}
export function fetchAdminWorkerCancelRequests(
status: 'pending' | 'approved' | 'rejected' = 'pending',
) {
return apiGet<{ items: WorkerCancelRequest[] }>('/api/v1/admin/worker-platform/cancel-requests', {
status,
})
}
export function reviewAdminWorkerCancelRequest(
requestId: number,
payload: { approved: boolean; reviewNote: string },
) {
return apiPost<{
request: WorkerCancelRequest
order: WorkOrder
approved: boolean
releasedDepositAmount: number
levelChanged: boolean
accountDisabled: boolean
}>(`/api/v1/admin/worker-platform/cancel-requests/${requestId}/review`, payload)
}
export function fetchAdminWorkerLevels() {
return apiGet<{ items: WorkerLevel[] }>('/api/v1/admin/worker-platform/levels')
}
+15
View File
@@ -6,6 +6,8 @@ import type {
WorkOrderEvent,
WorkOrderShare,
WorkerFinanceRequest,
WorkerCancelRequest,
WorkerCancelRequestRisk,
WorkerHallOrdersResponse,
WorkerLeaderboardResponse,
WorkerLeaderboardPeriod,
@@ -211,6 +213,19 @@ export function fetchWorkerMyOrderEvents(workOrderId: number) {
return apiGet<{ items: WorkOrderEvent[] }>(`/api/v1/worker/orders/${workOrderId}/events`)
}
export function fetchWorkerCancelRequests() {
return apiGet<{ risk: WorkerCancelRequestRisk; items: WorkerCancelRequest[] }>(
'/api/v1/worker/orders/cancel-requests',
)
}
export function submitWorkerCancelRequest(workOrderId: number, payload: { reason: string }) {
return apiPost<{ request: WorkerCancelRequest; risk: WorkerCancelRequestRisk }>(
`/api/v1/worker/orders/${workOrderId}/cancel-requests`,
payload,
)
}
export function markWorkerOrderRead(workOrderId: number) {
return apiPost<{ viewedAt: string; isUnread: false }>(`/api/v1/worker/orders/${workOrderId}/read`)
}