新增接单平台第一期闭环
This commit is contained in:
@@ -7,3 +7,4 @@ export * from './kuaishou-industry'
|
||||
export * from './orders'
|
||||
export * from './tasks'
|
||||
export * from './dev-mock'
|
||||
export * from './worker-platform'
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
import { apiGet, apiPost } from '@/lib/http'
|
||||
import type {
|
||||
WorkOrder,
|
||||
WorkerLevel,
|
||||
WorkerListResponse,
|
||||
WorkerUser,
|
||||
} from '@/types/worker-platform'
|
||||
|
||||
export function fetchAdminWorkerPlatformSummary() {
|
||||
return apiGet<{
|
||||
pendingWorkerCount: number
|
||||
pendingMaterialCount: number
|
||||
openOrderCount: number
|
||||
inProgressOrderCount: number
|
||||
}>('/api/v1/admin/worker-platform/summary')
|
||||
}
|
||||
|
||||
export function fetchAdminWorkerLevels() {
|
||||
return apiGet<{ items: WorkerLevel[] }>('/api/v1/admin/worker-platform/levels')
|
||||
}
|
||||
|
||||
export function saveAdminWorkerLevel(payload: {
|
||||
levelKey: string
|
||||
name: string
|
||||
depositFreeAmount?: number
|
||||
maxActiveOrders?: number
|
||||
}) {
|
||||
return apiPost<{ level: WorkerLevel }>('/api/v1/admin/worker-platform/levels', payload)
|
||||
}
|
||||
|
||||
export function fetchAdminWorkerUsers(params?: Record<string, unknown>) {
|
||||
return apiGet<WorkerListResponse<WorkerUser>>('/api/v1/admin/worker-platform/workers', params)
|
||||
}
|
||||
|
||||
export function reviewAdminWorkerUser(
|
||||
workerId: number,
|
||||
payload: { status: string; reviewNote?: string; levelId?: number },
|
||||
) {
|
||||
return apiPost<{ worker: WorkerUser }>(`/api/v1/admin/worker-platform/workers/${workerId}/review`, payload)
|
||||
}
|
||||
|
||||
export function creditAdminWorkerWallet(
|
||||
workerId: number,
|
||||
payload: { amount: number; note?: string },
|
||||
) {
|
||||
return apiPost<{ wallet: Record<string, unknown> }>(
|
||||
`/api/v1/admin/worker-platform/workers/${workerId}/wallet-credit`,
|
||||
payload,
|
||||
)
|
||||
}
|
||||
|
||||
export function fetchAdminWorkOrders(params?: Record<string, unknown>) {
|
||||
return apiGet<WorkerListResponse<WorkOrder>>('/api/v1/admin/worker-platform/orders', params)
|
||||
}
|
||||
|
||||
export function createAdminMockWorkOrder(payload: {
|
||||
platformOrderId?: string
|
||||
productName?: string
|
||||
rewardAmount?: number
|
||||
materialComplete?: boolean
|
||||
}) {
|
||||
return apiPost<{ order: WorkOrder }>('/api/v1/admin/worker-platform/orders/mock', payload)
|
||||
}
|
||||
|
||||
export function publishAdminWorkOrder(workOrderId: number) {
|
||||
return apiPost<{ order: WorkOrder }>(`/api/v1/admin/worker-platform/orders/${workOrderId}/publish`)
|
||||
}
|
||||
|
||||
export function markAdminWorkOrderProblem(workOrderId: number, note: string) {
|
||||
return apiPost<{ order: WorkOrder }>(`/api/v1/admin/worker-platform/orders/${workOrderId}/problem`, { note })
|
||||
}
|
||||
|
||||
export function acceptAdminWorkOrder(workOrderId: number) {
|
||||
return apiPost<{ order: WorkOrder }>(`/api/v1/admin/worker-platform/orders/${workOrderId}/accept`)
|
||||
}
|
||||
Reference in New Issue
Block a user