forked from yoone/API
refactor(物流): 更新物流相关接口和DTO以支持可选字段
重构物流追踪相关接口和DTO,将order_item_id和quantity改为可选字段 添加tracking_id字段到FulfillmentDTO 优化woocommerce物流数据结构映射 更新package-lock.json添加faker依赖
This commit is contained in:
parent
71b2c249be
commit
cb876e8c0f
|
|
@ -523,6 +523,23 @@
|
||||||
"node": ">=18"
|
"node": ">=18"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@faker-js/faker": {
|
||||||
|
"version": "10.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-10.2.0.tgz",
|
||||||
|
"integrity": "sha512-rTXwAsIxpCqzUnZvrxVh3L0QA0NzToqWBLAhV+zDV3MIIwiQhAZHMdPCIaj5n/yADu/tyk12wIPgL6YHGXJP+g==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/fakerjs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"peer": true,
|
||||||
|
"engines": {
|
||||||
|
"node": "^20.19.0 || ^22.13.0 || ^23.5.0 || >=24.0.0",
|
||||||
|
"npm": ">=10"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@hapi/bourne": {
|
"node_modules/@hapi/bourne": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/@hapi/bourne/-/bourne-3.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@hapi/bourne/-/bourne-3.0.0.tgz",
|
||||||
|
|
|
||||||
|
|
@ -408,13 +408,11 @@ export class WooCommerceAdapter implements ISiteAdapter {
|
||||||
// 包含账单地址与收货地址以及创建与更新时间
|
// 包含账单地址与收货地址以及创建与更新时间
|
||||||
|
|
||||||
// 映射物流追踪信息,将后端格式转换为前端期望的格式
|
// 映射物流追踪信息,将后端格式转换为前端期望的格式
|
||||||
const fulfillments = (item.fulfillments || []).map((track: any) => ({
|
const fulfillments = (item.fulfillments || []).map((track) => ({
|
||||||
tracking_number: track.tracking_number || '',
|
tracking_id: track.tracking_id,
|
||||||
shipping_provider: track.shipping_provider || '',
|
tracking_number: track.tracking_number,
|
||||||
shipping_method: track.shipping_method || '',
|
shipping_provider: track.tracking_provider,
|
||||||
status: track.status || '',
|
date_created: track.data_sipped,
|
||||||
date_created: track.date_created || '',
|
|
||||||
items: track.items || [],
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
|
||||||
|
|
@ -799,14 +799,16 @@ export class UpdateWebhookDTO {
|
||||||
|
|
||||||
|
|
||||||
export class FulfillmentItemDTO {
|
export class FulfillmentItemDTO {
|
||||||
@ApiProperty({ description: '订单项ID' })
|
@ApiProperty({ description: '订单项ID' ,required: false})
|
||||||
order_item_id: number;
|
order_item_id: number;
|
||||||
|
|
||||||
@ApiProperty({ description: '数量' })
|
@ApiProperty({ description: '数量' ,required:false})
|
||||||
quantity: number;
|
quantity: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
export class FulfillmentDTO {
|
export class FulfillmentDTO {
|
||||||
|
@ApiProperty({ description: '物流id', required: false })
|
||||||
|
tracking_id?: string;
|
||||||
@ApiProperty({ description: '物流单号', required: false })
|
@ApiProperty({ description: '物流单号', required: false })
|
||||||
tracking_number?: string;
|
tracking_number?: string;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -370,17 +370,15 @@ export interface WooOrder {
|
||||||
date_modified?: string;
|
date_modified?: string;
|
||||||
date_modified_gmt?: string;
|
date_modified_gmt?: string;
|
||||||
// 物流追踪信息
|
// 物流追踪信息
|
||||||
fulfillments?: Array<{
|
fulfillments?: WooFulfillment[];
|
||||||
tracking_number?: string;
|
}
|
||||||
shipping_provider?: string;
|
// 这个是一个插件的物流追踪信息
|
||||||
shipping_method?: string;
|
export interface WooFulfillment {
|
||||||
status?: string;
|
data_sipped: string;
|
||||||
date_created?: string;
|
tracking_id: string;
|
||||||
items?: Array<{
|
tracking_link: string;
|
||||||
order_item_id?: number;
|
tracking_number: string;
|
||||||
quantity?: number;
|
tracking_provider: string;
|
||||||
}>;
|
|
||||||
}>;
|
|
||||||
}
|
}
|
||||||
export interface WooOrderRefund {
|
export interface WooOrderRefund {
|
||||||
id?: number;
|
id?: number;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue