Я пишу собственный модуль миграции из устаревшей системы. У меня переносятся все мои заказы и позиции заказов, но commerce_order__order_items
таблица не заполняется.
Миграция моих заказов:
идентификатор: my_order_data
этикетка: Мои заказы
миграционная_группа: моя группа
миграционные_теги:
- кентико
- заказы
источник:
плагин: csv
идентификаторы: [ID заказа]
путь: 'public://import/program/orders.data.csv'
header_row_count: 1
процесс:
order_number: OrderInvoiceNumber
тип:
плагин: static_map
Тип источника
default_value: по умолчанию
карта:
commerce_order: по умолчанию
ИД:
-
плагин: migration_lookup
миграция: my_user_data
источник: OrderCreatedByUserID
no_stub: правда
-
плагин: default_value
значение_по умолчанию: 0
строго: правда
-
плагин: entity_exists
тип_объекта: пользователь
-
плагин: default_value
значение_по умолчанию: 0
государство:
плагин: default_value
default_value: завершено
созданный:
плагин: обратный вызов
источник: дата заказа
вызываемый: strtotime
измененный:
плагин: обратный вызов
источник: Ордерластмодифиед
вызываемый: strtotime
размещено:
плагин: обратный вызов
источник: дата заказа
вызываемый: strtotime
завершенный:
плагин: обратный вызов
источник: дата заказа
вызываемый: strtotime
почта: CustomerEmail
store_id:
плагин: default_value
значение_по умолчанию: 1
биллинг_профиль_данные:
-
плагин: migration_lookup
миграция: my_profile_data
источник: OrderBillingAddressID
no_stub: правда
billing_profile/target_id:
-
плагин: skip_on_empty
метод: процесс
источник: '@billing_profile_data'
-
плагин: извлечь
индекс: [0]
billing_profile/target_revision_id:
-
плагин: skip_on_empty
метод: процесс
источник: '@billing_profile_data'
-
плагин: извлечь
индекс: [0]
total_price/число: OrderTotalNumber
общая_цена/код_валюты:
плагин: default_value
default_value: 'Доллар США'
total_paid/номер: OrderTotalNumber
total_paid/currency_code:
плагин: default_value
default_value: 'Доллар США'
корректировки:
плагин: my_order_adjustment_shipping
пункт назначения:
плагин: entity:commerce_order
пункт назначения_модуль: коммерческий_заказ
миграция_зависимости:
обязательный:
- мои_данные_пользователя
- мои_данные_профиля
зависимости:
принудительно:
модуль:
- моя_миграция
Мои позиции заказа:
идентификатор: my_order_item_data
label: Мои заказы
миграционная_группа: моя группа
миграционные_теги:
- кентико
- заказы
- Предметы
источник:
плагин: csv
идентификаторы: [OrderItemID]
путь: 'public://import/program/order-items.data.csv'
header_row_count: 1
процесс:
тип:
плагин: default_value
default_value: 'по умолчанию'
номер заказа:
-
плагин: migration_lookup
миграция: my_order_data
источник: OrderItemOrderID
no_stub: правда
-
плагин: default_value
значение_по умолчанию: 0
строго: правда
-
плагин: entity_exists
entity_type: commerce_order
-
плагин: default_value
значение_по умолчанию: 0
закупленный_объект:
бар:
плагин: static_map
источник: OrderItemSKUID
карта:
377: 67
378: 66
...
значение_по умолчанию: 0
title: OrderItemSKUName
количество: OrderItemUnitCount
unit_price/число: OrderItemUnitPrice
unit_price/currency_code:
плагин: default_value
default_value: 'Доллар США'
total_price/число: OrderItemTotalPriceInMainCurrency
общая_цена/код_валюты:
плагин: default_value
default_value: 'Доллар США'
созданный:
плагин: обратный вызов
источник: Ордеритемластмодифиед
вызываемый: strtotime
измененный:
плагин: обратный вызов
источник: Ордеритемластмодифиед
вызываемый: strtotime
использует_legacy_adjustments:
плагин: default_value
значение_по умолчанию: ложь
пункт назначения:
плагин: entity:commerce_order_item
пункт назначения_модуль: коммерческий_заказ
миграция_зависимости:
обязательный:
- мои_данные_заказа
зависимости:
принудительно:
модуль:
- моя_миграция
Я пытался изучить пользовательские функции процесса, но, боюсь, я не знаю, с чего начать. Модуль коммерческой миграции не очень полезен с примером CSV.