This commit is contained in:
2026-10-08 15:34:19 +08:00
parent f50850f001
commit 8fa397bb5e
10 changed files with 1306 additions and 112 deletions
@@ -98,7 +98,7 @@ export interface RelabelItemDto {
relabelFileUrl?: string | null
shipmentNo?: string | null
trackingCode?: string | null
remark?: string | null
remark?: string
cartonMark?: string | null
fbaCartonMark?: string | null
destinationWarehouseId?: string | null
@@ -109,7 +109,7 @@ export interface RelabelHistoryDto {
fromStatus?: string | null
toStatus?: string | null
operatorId?: string | null
remark?: string | null
remark?: string
createdAt?: string | null
}
@@ -137,16 +137,24 @@ export interface ReturnPackingPlanBox {
export interface ReturnPackingPlanPayload {
returnNos: string[]
mode: 'CUSTOMER_INSTRUCTION' | 'WAREHOUSE_RECOMMENDATION'
mode: 'BOX' | 'SKU' | 'CUSTOMER_INSTRUCTION' | 'WAREHOUSE_RECOMMENDATION'
boxes: ReturnPackingPlanBox[]
remark?: string
idempotencyKey: string
sourceCartonMarks?: string[]
}
export interface ReturnPackingPlanDto extends ReturnPackingPlanPayload {
export interface ReturnPackingPlanDto extends Omit<ReturnPackingPlanPayload, 'remark'> {
planNo: string
customerId?: string
overseasWarehouseId?: string
status: string
boxes: ReturnPackingPlanBox[]
remark?: string | null
createdAt?: string | null
pushedAt?: string | null
completedAt?: string | null
resultCartons?: import('./returnInventory').ReturnCartonDetail[]
}
export async function createReturnPackingPlan(payload: ReturnPackingPlanPayload) {
@@ -156,6 +164,21 @@ export async function createReturnPackingPlan(payload: ReturnPackingPlanPayload)
return unwrapApiResponse(response) as ReturnPackingPlanDto
}
export interface ReturnPackingPlanQuery { page: number; size: number; status?: string; planNo?: string; customerId?: string; overseasWarehouseId?: string; skuCode?: string }
export async function listReturnPackingPlans(query: ReturnPackingPlanQuery) {
const response = await http.get<ApiEnvelope<OverseasPagePayload<ReturnPackingPlanDto>>, ApiEnvelope<OverseasPagePayload<ReturnPackingPlanDto>>>('/platform/v1/last-leg/return-packing-plans', { params: query })
return normalizeOverseasPage(unwrapApiResponse(response))
}
export async function reviewReturnPackingPlan(planNo: string) {
const response = await http.post<ApiEnvelope<ReturnPackingPlanDto>, ApiEnvelope<ReturnPackingPlanDto>>(`/platform/v1/last-leg/return-packing-plans/${encodeURIComponent(planNo)}/review`)
return unwrapApiResponse(response) as ReturnPackingPlanDto
}
export async function cancelReturnPackingPlan(planNo: string) {
const response = await http.post<ApiEnvelope<ReturnPackingPlanDto>, ApiEnvelope<ReturnPackingPlanDto>>(`/platform/v1/last-leg/return-packing-plans/${encodeURIComponent(planNo)}/cancel`)
return unwrapApiResponse(response) as ReturnPackingPlanDto
}
export async function listRelabelOrders(query: RelabelOrderQuery) {
const response = await http.get<ApiEnvelope<OverseasPagePayload<RelabelSummaryDto>>, ApiEnvelope<OverseasPagePayload<RelabelSummaryDto>>>(
'/platform/v1/last-leg/relabel-applications', { params: query },