refactor(interface): 重构站点适配器接口,按功能模块组织方法
重构 ISiteAdapter 接口,将相关方法按功能模块(客户、媒体、订单、产品等)分组 移除废弃的 fulfillOrder 方法 新增多个数据映射方法以支持统一数据格式转换
This commit is contained in:
parent
8f6727ae75
commit
e024d8752d
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -7,7 +7,6 @@ import {
|
||||||
CancelFulfillmentDTO,
|
CancelFulfillmentDTO,
|
||||||
CreateReviewDTO,
|
CreateReviewDTO,
|
||||||
CreateWebhookDTO,
|
CreateWebhookDTO,
|
||||||
FulfillmentDTO,
|
|
||||||
UnifiedCustomerDTO,
|
UnifiedCustomerDTO,
|
||||||
UnifiedCustomerPaginationDTO,
|
UnifiedCustomerPaginationDTO,
|
||||||
UnifiedMediaPaginationDTO,
|
UnifiedMediaPaginationDTO,
|
||||||
|
|
@ -986,25 +985,6 @@ export class SiteApiController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Post('/:siteId/orders/:id/fulfill')
|
|
||||||
@ApiOkResponse({ type: Object })
|
|
||||||
async fulfillOrder(
|
|
||||||
@Param('siteId') siteId: number,
|
|
||||||
@Param('id') id: string,
|
|
||||||
@Body() body: FulfillmentDTO
|
|
||||||
) {
|
|
||||||
this.logger.info(`[Site API] 订单履约开始, siteId: ${siteId}, orderId: ${id}`);
|
|
||||||
try {
|
|
||||||
const adapter = await this.siteApiService.getAdapter(siteId);
|
|
||||||
const data = await adapter.fulfillOrder(id, body);
|
|
||||||
this.logger.info(`[Site API] 订单履约成功, siteId: ${siteId}, orderId: ${id}`);
|
|
||||||
return successResponse(data);
|
|
||||||
} catch (error) {
|
|
||||||
this.logger.error(`[Site API] 订单履约失败, siteId: ${siteId}, orderId: ${id}, 错误信息: ${error.message}`);
|
|
||||||
return errorResponse(error.message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Post('/:siteId/orders/:id/cancel-fulfill')
|
@Post('/:siteId/orders/:id/cancel-fulfill')
|
||||||
@ApiOkResponse({ type: Object })
|
@ApiOkResponse({ type: Object })
|
||||||
async cancelFulfillment(
|
async cancelFulfillment(
|
||||||
|
|
|
||||||
|
|
@ -20,50 +20,70 @@ import { UnifiedPaginationDTO, UnifiedSearchParamsDTO } from '../dto/api.dto';
|
||||||
import { BatchOperationDTO, BatchOperationResultDTO } from '../dto/batch.dto';
|
import { BatchOperationDTO, BatchOperationResultDTO } from '../dto/batch.dto';
|
||||||
|
|
||||||
export interface ISiteAdapter {
|
export interface ISiteAdapter {
|
||||||
|
// ========== 客户映射方法 ==========
|
||||||
/**
|
/**
|
||||||
* 获取产品列表
|
* 将平台客户数据转换为统一客户数据格式
|
||||||
|
* @param data 平台特定客户数据
|
||||||
|
* @returns 统一客户数据格式
|
||||||
*/
|
*/
|
||||||
getProducts(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedProductDTO>>;
|
mapPlatformToUnifiedCustomer(data: any): UnifiedCustomerDTO;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有产品
|
* 将统一客户数据格式转换为平台客户数据
|
||||||
|
* @param data 统一客户数据格式
|
||||||
|
* @returns 平台特定客户数据
|
||||||
*/
|
*/
|
||||||
getAllProducts(params?: UnifiedSearchParamsDTO): Promise<UnifiedProductDTO[]>;
|
mapUnifiedToPlatformCustomer(data: Partial<UnifiedCustomerDTO>): any;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取单个产品
|
* 获取单个客户
|
||||||
*/
|
*/
|
||||||
getProduct(id: string | number): Promise<UnifiedProductDTO>;
|
getCustomer(id: string | number): Promise<UnifiedCustomerDTO>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取订单列表
|
* 获取客户列表
|
||||||
*/
|
*/
|
||||||
getOrders(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedOrderDTO>>;
|
getCustomers(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedCustomerDTO>>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取订单总数
|
* 获取所有客户
|
||||||
*/
|
*/
|
||||||
countOrders(params: Record<string,any>): Promise<number>;
|
getAllCustomers(params?: UnifiedSearchParamsDTO): Promise<UnifiedCustomerDTO[]>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有订单
|
* 创建客户
|
||||||
*/
|
*/
|
||||||
getAllOrders(params?: UnifiedSearchParamsDTO): Promise<UnifiedOrderDTO[]>;
|
createCustomer(data: Partial<UnifiedCustomerDTO>): Promise<UnifiedCustomerDTO>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取单个订单
|
* 更新客户
|
||||||
*/
|
*/
|
||||||
getOrder(id: string | number): Promise<UnifiedOrderDTO>;
|
updateCustomer(id: string | number, data: Partial<UnifiedCustomerDTO>): Promise<UnifiedCustomerDTO>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取订阅列表
|
* 删除客户
|
||||||
*/
|
*/
|
||||||
getSubscriptions(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedSubscriptionDTO>>;
|
deleteCustomer(id: string | number): Promise<boolean>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有订阅
|
* 批量处理客户
|
||||||
*/
|
*/
|
||||||
getAllSubscriptions(params?: UnifiedSearchParamsDTO): Promise<UnifiedSubscriptionDTO[]>;
|
batchProcessCustomers?(data: BatchOperationDTO): Promise<BatchOperationResultDTO>;
|
||||||
|
|
||||||
|
// ========== 媒体映射方法 ==========
|
||||||
|
/**
|
||||||
|
* 将平台媒体数据转换为统一媒体数据格式
|
||||||
|
* @param data 平台特定媒体数据
|
||||||
|
* @returns 统一媒体数据格式
|
||||||
|
*/
|
||||||
|
mapPlatformToUnifiedMedia(data: any): UnifiedMediaDTO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一媒体数据格式转换为平台媒体数据
|
||||||
|
* @param data 统一媒体数据格式
|
||||||
|
* @returns 平台特定媒体数据
|
||||||
|
*/
|
||||||
|
mapUnifiedToPlatformMedia(data: Partial<UnifiedMediaDTO>): any;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取媒体列表
|
* 获取媒体列表
|
||||||
|
|
@ -80,75 +100,69 @@ export interface ISiteAdapter {
|
||||||
*/
|
*/
|
||||||
createMedia(file: any): Promise<UnifiedMediaDTO>;
|
createMedia(file: any): Promise<UnifiedMediaDTO>;
|
||||||
|
|
||||||
|
// ========== 订单映射方法 ==========
|
||||||
/**
|
/**
|
||||||
* 获取评论列表
|
* 将平台订单数据转换为统一订单数据格式
|
||||||
|
* @param data 平台特定订单数据
|
||||||
|
* @returns 统一订单数据格式
|
||||||
*/
|
*/
|
||||||
getReviews(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedReviewDTO>>;
|
mapPlatformToUnifiedOrder(data: any): UnifiedOrderDTO;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有评论
|
* 将统一订单数据格式转换为平台订单数据
|
||||||
|
* @param data 统一订单数据格式
|
||||||
|
* @returns 平台特定订单数据
|
||||||
*/
|
*/
|
||||||
getAllReviews(params?: UnifiedSearchParamsDTO): Promise<UnifiedReviewDTO[]>;
|
mapUnifiedToPlatformOrder(data: Partial<UnifiedOrderDTO>): any;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建评论
|
* 将统一订单创建参数转换为平台订单创建参数
|
||||||
|
* @param data 统一订单创建参数
|
||||||
|
* @returns 平台订单创建参数
|
||||||
*/
|
*/
|
||||||
createReview(data: CreateReviewDTO): Promise<UnifiedReviewDTO>;
|
mapCreateOrderParams(data: Partial<UnifiedOrderDTO>): any;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新评论
|
* 将统一订单更新参数转换为平台订单更新参数
|
||||||
|
* @param data 统一订单更新参数
|
||||||
|
* @returns 平台订单更新参数
|
||||||
*/
|
*/
|
||||||
updateReview(id: number, data: UpdateReviewDTO): Promise<UnifiedReviewDTO>;
|
mapUpdateOrderParams(data: Partial<UnifiedOrderDTO>): any;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除评论
|
* 获取单个订单
|
||||||
*/
|
*/
|
||||||
deleteReview(id: number): Promise<boolean>;
|
getOrder(id: string | number): Promise<UnifiedOrderDTO>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建产品
|
* 获取订单列表
|
||||||
*/
|
*/
|
||||||
createProduct(data: Partial<UnifiedProductDTO>): Promise<UnifiedProductDTO>;
|
getOrders(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedOrderDTO>>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新产品
|
* 获取所有订单
|
||||||
*/
|
*/
|
||||||
updateProduct(id: string | number, data: Partial<UnifiedProductDTO>): Promise<boolean>;
|
getAllOrders(params?: UnifiedSearchParamsDTO): Promise<UnifiedOrderDTO[]>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除产品
|
* 获取订单总数
|
||||||
*/
|
*/
|
||||||
deleteProduct(id: string | number): Promise<boolean>;
|
countOrders(params: Record<string,any>): Promise<number>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取产品变体列表
|
* 创建订单
|
||||||
*/
|
*/
|
||||||
getVariations(productId: string | number, params: UnifiedSearchParamsDTO): Promise<UnifiedVariationPaginationDTO>;
|
createOrder(data: Partial<UnifiedOrderDTO>): Promise<UnifiedOrderDTO>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取所有产品变体
|
* 更新订单
|
||||||
*/
|
*/
|
||||||
getAllVariations(productId: string | number, params?: UnifiedSearchParamsDTO): Promise<UnifiedProductVariationDTO[]>;
|
updateOrder(id: string | number, data: Partial<UnifiedOrderDTO>): Promise<boolean>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取单个产品变体
|
* 删除订单
|
||||||
*/
|
*/
|
||||||
getVariation(productId: string | number, variationId: string | number): Promise<UnifiedProductVariationDTO>;
|
deleteOrder(id: string | number): Promise<boolean>;
|
||||||
|
|
||||||
/**
|
|
||||||
* 创建产品变体
|
|
||||||
*/
|
|
||||||
createVariation(productId: string | number, data: CreateVariationDTO): Promise<UnifiedProductVariationDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 更新产品变体
|
|
||||||
*/
|
|
||||||
updateVariation(productId: string | number, variationId: string | number, data: UpdateVariationDTO): Promise<UnifiedProductVariationDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除产品变体
|
|
||||||
*/
|
|
||||||
deleteVariation(productId: string | number, variationId: string | number): Promise<boolean>;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取订单备注
|
* 获取订单备注
|
||||||
|
|
@ -160,71 +174,6 @@ export interface ISiteAdapter {
|
||||||
*/
|
*/
|
||||||
createOrderNote(orderId: string | number, data: any): Promise<any>;
|
createOrderNote(orderId: string | number, data: any): Promise<any>;
|
||||||
|
|
||||||
batchProcessProducts?(data: BatchOperationDTO): Promise<BatchOperationResultDTO>;
|
|
||||||
|
|
||||||
createOrder(data: Partial<UnifiedOrderDTO>): Promise<UnifiedOrderDTO>;
|
|
||||||
updateOrder(id: string | number, data: Partial<UnifiedOrderDTO>): Promise<boolean>;
|
|
||||||
deleteOrder(id: string | number): Promise<boolean>;
|
|
||||||
|
|
||||||
batchProcessOrders?(data: BatchOperationDTO): Promise<BatchOperationResultDTO>;
|
|
||||||
|
|
||||||
getCustomers(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedCustomerDTO>>;
|
|
||||||
getAllCustomers(params?: UnifiedSearchParamsDTO): Promise<UnifiedCustomerDTO[]>;
|
|
||||||
getCustomer(id: string | number): Promise<UnifiedCustomerDTO>;
|
|
||||||
createCustomer(data: Partial<UnifiedCustomerDTO>): Promise<UnifiedCustomerDTO>;
|
|
||||||
updateCustomer(id: string | number, data: Partial<UnifiedCustomerDTO>): Promise<UnifiedCustomerDTO>;
|
|
||||||
deleteCustomer(id: string | number): Promise<boolean>;
|
|
||||||
|
|
||||||
batchProcessCustomers?(data: BatchOperationDTO): Promise<BatchOperationResultDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取webhooks列表
|
|
||||||
*/
|
|
||||||
getWebhooks(params: UnifiedSearchParamsDTO): Promise<UnifiedWebhookPaginationDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取所有webhooks
|
|
||||||
*/
|
|
||||||
getAllWebhooks(params?: UnifiedSearchParamsDTO): Promise<UnifiedWebhookDTO[]>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取单个webhook
|
|
||||||
*/
|
|
||||||
getWebhook(id: string | number): Promise<UnifiedWebhookDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 创建webhook
|
|
||||||
*/
|
|
||||||
createWebhook(data: CreateWebhookDTO): Promise<UnifiedWebhookDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 更新webhook
|
|
||||||
*/
|
|
||||||
updateWebhook(id: string | number, data: UpdateWebhookDTO): Promise<UnifiedWebhookDTO>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除webhook
|
|
||||||
*/
|
|
||||||
deleteWebhook(id: string | number): Promise<boolean>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取站点链接列表
|
|
||||||
*/
|
|
||||||
getLinks(): Promise<Array<{title: string, url: string}>>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 订单履行(发货)
|
|
||||||
*/
|
|
||||||
fulfillOrder(orderId: string | number, data: {
|
|
||||||
tracking_number?: string;
|
|
||||||
shipping_provider?: string;
|
|
||||||
shipping_method?: string;
|
|
||||||
items?: Array<{
|
|
||||||
order_item_id: number;
|
|
||||||
quantity: number;
|
|
||||||
}>;
|
|
||||||
}): Promise<any>;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 取消订单履行
|
* 取消订单履行
|
||||||
*/
|
*/
|
||||||
|
|
@ -272,4 +221,276 @@ export interface ISiteAdapter {
|
||||||
* 删除订单履行信息
|
* 删除订单履行信息
|
||||||
*/
|
*/
|
||||||
deleteOrderFulfillment(orderId: string | number, fulfillmentId: string): Promise<boolean>;
|
deleteOrderFulfillment(orderId: string | number, fulfillmentId: string): Promise<boolean>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量处理订单
|
||||||
|
*/
|
||||||
|
batchProcessOrders?(data: BatchOperationDTO): Promise<BatchOperationResultDTO>;
|
||||||
|
|
||||||
|
// ========== 产品映射方法 ==========
|
||||||
|
/**
|
||||||
|
* 将平台产品数据转换为统一产品数据格式
|
||||||
|
* @param data 平台特定产品数据
|
||||||
|
* @returns 统一产品数据格式
|
||||||
|
*/
|
||||||
|
mapPlatformToUnifiedProduct(data: any): UnifiedProductDTO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一产品数据格式转换为平台产品数据
|
||||||
|
* @param data 统一产品数据格式
|
||||||
|
* @returns 平台特定产品数据
|
||||||
|
*/
|
||||||
|
mapUnifiedToPlatformProduct(data: Partial<UnifiedProductDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一产品创建参数转换为平台产品创建参数
|
||||||
|
* @param data 统一产品创建参数
|
||||||
|
* @returns 平台产品创建参数
|
||||||
|
*/
|
||||||
|
mapCreateProductParams(data: Partial<UnifiedProductDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一产品更新参数转换为平台产品更新参数
|
||||||
|
* @param data 统一产品更新参数
|
||||||
|
* @returns 平台产品更新参数
|
||||||
|
*/
|
||||||
|
mapUpdateProductParams(data: Partial<UnifiedProductDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单个产品
|
||||||
|
*/
|
||||||
|
getProduct(id: string | number): Promise<UnifiedProductDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取产品列表
|
||||||
|
*/
|
||||||
|
getProducts(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedProductDTO>>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有产品
|
||||||
|
*/
|
||||||
|
getAllProducts(params?: UnifiedSearchParamsDTO): Promise<UnifiedProductDTO[]>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建产品
|
||||||
|
*/
|
||||||
|
createProduct(data: Partial<UnifiedProductDTO>): Promise<UnifiedProductDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新产品
|
||||||
|
*/
|
||||||
|
updateProduct(id: string | number, data: Partial<UnifiedProductDTO>): Promise<boolean>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除产品
|
||||||
|
*/
|
||||||
|
deleteProduct(id: string | number): Promise<boolean>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量处理产品
|
||||||
|
*/
|
||||||
|
batchProcessProducts?(data: BatchOperationDTO): Promise<BatchOperationResultDTO>;
|
||||||
|
|
||||||
|
// ========== 评论映射方法 ==========
|
||||||
|
/**
|
||||||
|
* 将平台评论数据转换为统一评论数据格式
|
||||||
|
* @param data 平台特定评论数据
|
||||||
|
* @returns 统一评论数据格式
|
||||||
|
*/
|
||||||
|
mapPlatformToUnifiedReview(data: any): UnifiedReviewDTO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一评论数据格式转换为平台评论数据
|
||||||
|
* @param data 统一评论数据格式
|
||||||
|
* @returns 平台特定评论数据
|
||||||
|
*/
|
||||||
|
mapUnifiedToPlatformReview(data: Partial<UnifiedReviewDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一评论创建参数转换为平台评论创建参数
|
||||||
|
* @param data 统一评论创建参数
|
||||||
|
* @returns 平台评论创建参数
|
||||||
|
*/
|
||||||
|
mapCreateReviewParams(data: CreateReviewDTO): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一评论更新参数转换为平台评论更新参数
|
||||||
|
* @param data 统一评论更新参数
|
||||||
|
* @returns 平台评论更新参数
|
||||||
|
*/
|
||||||
|
mapUpdateReviewParams(data: UpdateReviewDTO): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取评论列表
|
||||||
|
*/
|
||||||
|
getReviews(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedReviewDTO>>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有评论
|
||||||
|
*/
|
||||||
|
getAllReviews(params?: UnifiedSearchParamsDTO): Promise<UnifiedReviewDTO[]>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建评论
|
||||||
|
*/
|
||||||
|
createReview(data: CreateReviewDTO): Promise<UnifiedReviewDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新评论
|
||||||
|
*/
|
||||||
|
updateReview(id: number, data: UpdateReviewDTO): Promise<UnifiedReviewDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除评论
|
||||||
|
*/
|
||||||
|
deleteReview(id: number): Promise<boolean>;
|
||||||
|
|
||||||
|
// ========== 订阅映射方法 ==========
|
||||||
|
/**
|
||||||
|
* 将平台订阅数据转换为统一订阅数据格式
|
||||||
|
* @param data 平台特定订阅数据
|
||||||
|
* @returns 统一订阅数据格式
|
||||||
|
*/
|
||||||
|
mapPlatformToUnifiedSubscription(data: any): UnifiedSubscriptionDTO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一订阅数据格式转换为平台订阅数据
|
||||||
|
* @param data 统一订阅数据格式
|
||||||
|
* @returns 平台特定订阅数据
|
||||||
|
*/
|
||||||
|
mapUnifiedToPlatformSubscription(data: Partial<UnifiedSubscriptionDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取订阅列表
|
||||||
|
*/
|
||||||
|
getSubscriptions(params: UnifiedSearchParamsDTO): Promise<UnifiedPaginationDTO<UnifiedSubscriptionDTO>>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有订阅
|
||||||
|
*/
|
||||||
|
getAllSubscriptions(params?: UnifiedSearchParamsDTO): Promise<UnifiedSubscriptionDTO[]>;
|
||||||
|
|
||||||
|
// ========== 产品变体映射方法 ==========
|
||||||
|
/**
|
||||||
|
* 将平台产品变体数据转换为统一产品变体数据格式
|
||||||
|
* @param data 平台特定产品变体数据
|
||||||
|
* @returns 统一产品变体数据格式
|
||||||
|
*/
|
||||||
|
mapPlatformToUnifiedVariation(data: any): UnifiedProductVariationDTO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一产品变体数据格式转换为平台产品变体数据
|
||||||
|
* @param data 统一产品变体数据格式
|
||||||
|
* @returns 平台特定产品变体数据
|
||||||
|
*/
|
||||||
|
mapUnifiedToPlatformVariation(data: Partial<UnifiedProductVariationDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一产品变体创建参数转换为平台产品变体创建参数
|
||||||
|
* @param data 统一产品变体创建参数
|
||||||
|
* @returns 平台产品变体创建参数
|
||||||
|
*/
|
||||||
|
mapCreateVariationParams(data: CreateVariationDTO): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一产品变体更新参数转换为平台产品变体更新参数
|
||||||
|
* @param data 统一产品变体更新参数
|
||||||
|
* @returns 平台产品变体更新参数
|
||||||
|
*/
|
||||||
|
mapUpdateVariationParams(data: UpdateVariationDTO): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单个产品变体
|
||||||
|
*/
|
||||||
|
getVariation(productId: string | number, variationId: string | number): Promise<UnifiedProductVariationDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取产品变体列表
|
||||||
|
*/
|
||||||
|
getVariations(productId: string | number, params: UnifiedSearchParamsDTO): Promise<UnifiedVariationPaginationDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有产品变体
|
||||||
|
*/
|
||||||
|
getAllVariations(productId: string | number, params?: UnifiedSearchParamsDTO): Promise<UnifiedProductVariationDTO[]>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建产品变体
|
||||||
|
*/
|
||||||
|
createVariation(productId: string | number, data: CreateVariationDTO): Promise<UnifiedProductVariationDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新产品变体
|
||||||
|
*/
|
||||||
|
updateVariation(productId: string | number, variationId: string | number, data: UpdateVariationDTO): Promise<UnifiedProductVariationDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除产品变体
|
||||||
|
*/
|
||||||
|
deleteVariation(productId: string | number, variationId: string | number): Promise<boolean>;
|
||||||
|
|
||||||
|
// ========== Webhook映射方法 ==========
|
||||||
|
/**
|
||||||
|
* 将平台Webhook数据转换为统一Webhook数据格式
|
||||||
|
* @param data 平台特定Webhook数据
|
||||||
|
* @returns 统一Webhook数据格式
|
||||||
|
*/
|
||||||
|
mapPlatformToUnifiedWebhook(data: any): UnifiedWebhookDTO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一Webhook数据格式转换为平台Webhook数据
|
||||||
|
* @param data 统一Webhook数据格式
|
||||||
|
* @returns 平台特定Webhook数据
|
||||||
|
*/
|
||||||
|
mapUnifiedToPlatformWebhook(data: Partial<UnifiedWebhookDTO>): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一Webhook创建参数转换为平台Webhook创建参数
|
||||||
|
* @param data 统一Webhook创建参数
|
||||||
|
* @returns 平台Webhook创建参数
|
||||||
|
*/
|
||||||
|
mapCreateWebhookParams(data: CreateWebhookDTO): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将统一Webhook更新参数转换为平台Webhook更新参数
|
||||||
|
* @param data 统一Webhook更新参数
|
||||||
|
* @returns 平台Webhook更新参数
|
||||||
|
*/
|
||||||
|
mapUpdateWebhookParams(data: UpdateWebhookDTO): any;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单个webhook
|
||||||
|
*/
|
||||||
|
getWebhook(id: string | number): Promise<UnifiedWebhookDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取webhooks列表
|
||||||
|
*/
|
||||||
|
getWebhooks(params: UnifiedSearchParamsDTO): Promise<UnifiedWebhookPaginationDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有webhooks
|
||||||
|
*/
|
||||||
|
getAllWebhooks(params?: UnifiedSearchParamsDTO): Promise<UnifiedWebhookDTO[]>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建webhook
|
||||||
|
*/
|
||||||
|
createWebhook(data: CreateWebhookDTO): Promise<UnifiedWebhookDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新webhook
|
||||||
|
*/
|
||||||
|
updateWebhook(id: string | number, data: UpdateWebhookDTO): Promise<UnifiedWebhookDTO>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除webhook
|
||||||
|
*/
|
||||||
|
deleteWebhook(id: string | number): Promise<boolean>;
|
||||||
|
|
||||||
|
// ========== 站点/其他方法 ==========
|
||||||
|
/**
|
||||||
|
* 获取站点链接列表
|
||||||
|
*/
|
||||||
|
getLinks(): Promise<Array<{title: string, url: string}>>;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
// 从 unified 到 数据库需要有个转换流程
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
// 文件转换
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
import { UnifiedOrderDTO } from "../dto/site-api.dto";
|
||||||
|
|
||||||
|
export class ShipmentAdapter {
|
||||||
|
// 用于导出物流需要的数据
|
||||||
|
mapFromOrder(order: UnifiedOrderDTO): any {
|
||||||
|
return order;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue