update order consumer

This commit is contained in:
2026-02-05 10:38:59 +08:00
parent f24e6dd52c
commit d8020f8015
+3 -3
View File
@@ -157,7 +157,7 @@ class OrderConsumer extends ConsumerMessage
// 2. 查询获取 ID 映射 [platform_order_id => local db id]
// 通过唯一键查询刚写入的订单,获取数据库生成的 ID
$id_mapping = $entity->newQuery()
$platform_orders_id_to_local_db_order_id_map = $entity->newQuery()
->where(function ($query) use ($orders_data, $unique_by) {
foreach ($orders_data as $order_data) {
$query->orWhere(function ($q) use ($order_data, $unique_by) {
@@ -170,10 +170,10 @@ class OrderConsumer extends ConsumerMessage
->pluck('id', 'platform_order_id')
->toArray();
dump("ID mapping: " . count($id_mapping) . " orders");
dump("ID mapping: " . count($platform_orders_id_to_local_db_order_id_map) . " orders");
// 3. 格式化订单子项(传入 ID 映射,使子项能直接获取正确的 order_id)
$items = $parse->formatOrderItemsFromRaw($raw_data, $id_mapping);
$items = $parse->formatOrderItemsFromRaw($raw_data, $platform_orders_id_to_local_db_order_id_map);
// 4. 处理订单子项
// 鉴于定义子项为了保留足够的灵活性,因此每次订单更新,我们都需要完整更新 OrderItem