From bfedef815e7b665ab3375e07b5d89a4be2df7ae6 Mon Sep 17 00:00:00 2001 From: liuyihe <2513762445@qq.com> Date: Sun, 30 Aug 2026 16:40:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order-management/api/deliveryOrders.ts | 17 +++++++++++++++++ src/modules/order-management/routes.ts | 2 +- .../views/DeliveryOrdersView.vue | 5 ----- src/modules/tenant-management/contracts.ts | 2 ++ 4 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 src/modules/order-management/api/deliveryOrders.ts diff --git a/src/modules/order-management/api/deliveryOrders.ts b/src/modules/order-management/api/deliveryOrders.ts new file mode 100644 index 0000000..b7ea3dc --- /dev/null +++ b/src/modules/order-management/api/deliveryOrders.ts @@ -0,0 +1,17 @@ +import { overseasApiRequest } from '@/api/overseasHttp' + +export interface PageResult { records: T[]; page: number; size: number; total: number; pages: number } +export interface DeliveryRow { id: string; deliveryNo: string; outboundNo: string; dispatchNo: string; overseasWarehouseName: string; status: string; waybillNo: string; deliveryMethod: string; carrierName: string; vehiclePlate: string; driverName: string; palletCount: number; packageCount: number; totalWeightKg: number; totalVolumeCbm: number; plannedDeliveryAt: string; expectedArrivalAt: string; signedAt: string; createdAt: string } +export interface DeliveryQuery { page: number; size: number; documentNo?: string; warehouseId?: string; status?: string; dispatchNo?: string; waybillNo?: string; vehiclePlate?: string; driverName?: string; deliveryMethod?: string; plannedFrom?: string; plannedTo?: string } +export interface DeliveryTransferPayload { dispatchNo: string; idempotencyKey: string; plannedDeliveryAt: string; deliveryMethod: string; pickupMethod: string; loadingType: string; waybillNo?: string; carrierName?: string; vehicleType?: string; vehicleSize?: string; driverName?: string; driverPhone?: string; vehiclePlate?: string; appointmentAccount?: string; sellerName?: string; remark?: string; fees: Array<{ feeType: string; currency: string; amount: number; remark?: string }> } + +export function listDeliveryOrders(params: DeliveryQuery) { + return overseasApiRequest>({ method: 'GET', url: '/merchant/v1/last-leg/delivery-orders', params }) +} +export function getDeliveryOrder(deliveryNo: string) { + return overseasApiRequest>({ method: 'GET', url: `/merchant/v1/last-leg/delivery-orders/${encodeURIComponent(deliveryNo)}`, params: { page: 1, size: 200 } }) +} +export function createDeliveryOrder(payload: DeliveryTransferPayload) { + const { dispatchNo, ...request } = payload + return overseasApiRequest>({ method: 'POST', url: '/merchant/v1/last-leg/delivery-orders', params: { dispatchNo }, data: request }) +} diff --git a/src/modules/order-management/routes.ts b/src/modules/order-management/routes.ts index d524233..99dcf2c 100644 --- a/src/modules/order-management/routes.ts +++ b/src/modules/order-management/routes.ts @@ -25,7 +25,7 @@ export const orderManagementModule = { path: 'orders/delivery', name: 'orders-delivery', component: () => import('./views/DeliveryOrdersView.vue'), - release: 'prototype', + release: 'active', meta: { title: '派送订单列表', description: '查询海外仓派送订单', permission: 'merchant:warehouse:delivery:list' }, navigation: { key: 'orders-delivery', icon: Truck }, }, diff --git a/src/modules/order-management/views/DeliveryOrdersView.vue b/src/modules/order-management/views/DeliveryOrdersView.vue index 71be540..e69de29 100644 --- a/src/modules/order-management/views/DeliveryOrdersView.vue +++ b/src/modules/order-management/views/DeliveryOrdersView.vue @@ -1,5 +0,0 @@ - - - diff --git a/src/modules/tenant-management/contracts.ts b/src/modules/tenant-management/contracts.ts index 52a0831..5c559af 100644 --- a/src/modules/tenant-management/contracts.ts +++ b/src/modules/tenant-management/contracts.ts @@ -43,6 +43,8 @@ export const TENANT_PERMISSION_GROUPS: readonly TenantPermissionGroup[] = [ { code: 'order:first-leg:edit', label: '编辑订单', description: '编辑本企业尚未提交的订单草稿' }, { code: 'order:first-leg:submit', label: '提交订单', description: '提交草稿进入平台审核' }, { code: 'order:first-leg:cancel', label: '取消订单', description: '在允许的状态下取消订单' }, + { code: 'merchant:warehouse:delivery:list', label: '查看派送单', description: '分页查询本企业海外仓派送单' }, + { code: 'merchant:warehouse:delivery:create', label: '创建派送单', description: '从排车单创建海外仓派送单' }, ], }, {