Files
datahub/backend/app/Platform/OrderContract.php
T
2026-03-05 09:47:22 +08:00

44 lines
1.2 KiB
PHP

<?php
declare(strict_types=1);
namespace App\Platform;
/**
* 订单解析器契约接口
*
* 定义所有电商平台订单解析器必须实现的方法
* 适用于:Shopee、Tmall、JD 等所有电商平台
*/
interface OrderContract
{
/**
* 从原始数据格式化订单子项
*
* @param array $raw_data 原始数据数组
* @param array $platform_orders_id_to_local_db_order_id_map 平台订单 ID => 本地数据库订单 ID 映射
* @return array 解析后的订单子项数据数组,每个元素包含:
* - company_id, platform_id, store_id
* - platform_order_id, sub_order_id
* - product_id, platform_product_id
* - unit_price, quantity, discount, total
* 等字段
*/
public function formatOrderItemsFromRaw(array $raw_data, array $platform_orders_id_to_local_db_order_id_map): array;
/**
* 获取本地订单状态 ID
*
* @param string $platform_order_status 平台订单状态字符串
* @return int 本地订单状态 ID
*/
public function getOrderStatusId(string $platform_order_status): int;
/**
* 获取支付方式 ID
*
* @return int 支付方式 ID
*/
public function getPaymentMethodId(): int;
}