add:新增验证视频可选上传功能

This commit is contained in:
2026-10-24 16:12:56 +08:00
parent 25756901cc
commit 0ee5554f57
28 changed files with 1588 additions and 51 deletions
+19 -9
View File
@@ -9,6 +9,8 @@ import type {
WorkerCancelRequest,
WorkerCancelRequestRisk,
WorkerAnnouncementConfig,
WorkerAcceptanceConfig,
WorkerAcceptanceVideo,
WorkerOrderFeedback,
WorkerAfterSalesCase,
WorkerHallCategoriesResponse,
@@ -143,6 +145,11 @@ export function fetchWorkerAnnouncement() {
return apiGet<WorkerAnnouncementConfig>('/api/v1/worker/announcement')
}
/** 验收视频配置(后台可改):时长上限、目标高度、码率等,压缩前读取。 */
export function fetchWorkerAcceptanceConfig() {
return apiGet<WorkerAcceptanceConfig>('/api/v1/worker/acceptance/config')
}
export function fetchWorkerWalletLedgers(params?: Record<string, unknown>) {
return apiGet<WorkerListResponse<WorkerWalletLedger>>(
'/api/v1/worker/profile/wallet-ledgers',
@@ -301,10 +308,16 @@ export function saveWorkerOrderNote(workOrderId: number, note: string) {
return apiPost<{ order: WorkOrder }>(`/api/v1/worker/orders/${workOrderId}/note`, { note })
}
export function submitWorkerAcceptance(
workOrderId: number,
payload: { note?: string; imageUrls?: string[]; files?: UploadedFile[]; shareId?: number },
) {
export type WorkerAcceptancePayload = {
note?: string
imageUrls?: string[]
files?: UploadedFile[]
/** 验收视频(非必填);null 在草稿阶段表示删除,已提交阶段服务端只接受替换 */
video?: WorkerAcceptanceVideo | null
shareId?: number
}
export function submitWorkerAcceptance(workOrderId: number, payload: WorkerAcceptancePayload) {
return apiPost<{ order: WorkOrder; share?: WorkOrderShare }>(
`/api/v1/worker/orders/${workOrderId}/submit-acceptance`,
payload,
@@ -328,10 +341,7 @@ export function remindWorkerAcceptance(workOrderId: number) {
)
}
export function saveWorkerAcceptanceDraft(
workOrderId: number,
payload: { note?: string; imageUrls?: string[]; files?: UploadedFile[]; shareId?: number },
) {
export function saveWorkerAcceptanceDraft(workOrderId: number, payload: WorkerAcceptancePayload) {
return apiPost<{ order: WorkOrder; share?: WorkOrderShare }>(
`/api/v1/worker/orders/${workOrderId}/acceptance-draft`,
payload,
@@ -340,7 +350,7 @@ export function saveWorkerAcceptanceDraft(
export function supplementWorkerAcceptedOrderEvidence(
workOrderId: number,
payload: { files: UploadedFile[]; shareId?: number },
payload: { files: UploadedFile[]; video?: WorkerAcceptanceVideo | null; shareId?: number },
) {
return apiPost<{ order: WorkOrder; share?: WorkOrderShare }>(
`/api/v1/worker/orders/${workOrderId}/acceptance-evidence`,