Изменение айди заказа при его создании

Синхронизируем сайт с другой системой. Очень нужно указывать принудительно айди заказа при его создании. 

Нашел что создание заказа происходит тут:
\wa-apps\shop\lib\workflow\shopWorkflowCreateAction.class.php, в функции: function execute($data = null)

достаточно добавить нужный айди:
$order['id'] = 4;

перед строчкой
$order_id = $this->order_model->insert($order);

Вопросы в следующем.
Вроде все корректно сработало, но хочется уточнить - Нигде же больше не потребуется менять айдишник? во всех таблицах он будет корректным?)

И самое главное, эту задачу каким-то образом можно решить написав плагин или типа того, чтобы не изменять системные файлы?

1 ответ

  • 1
    Алексей Webasyst 26 мая 2020 12:53 #

    ID заказа это номер в таблице. В большинстве случаев добавляют новое поле и по нему синхронизируют и указывают идентификатор в сторонней системе.

    • +1
      Апельсин Апельсин 26 мая 2020 14:10 #

      Ну, тут не подойдет. Нужно четкое соответствие айдишников, чтобы не было путаницы. 

      Сторонняя система принимает заказы с разных мест, одно из которых шопскрипт. Оператор обрабатывающий заказы, работает в сторонней системе, а личный кабинет пользователя в шопскрипте.

      Т.е. и клиенту, и оператору надо показывать одну и ту же циферку номера заказа. И на чеках тоже и еще гденибудь. 

      • +1
        Алексей Алексей Webasyst 26 мая 2020 14:19 #

        Если в Shop-Script заказы попадают только из сторонней системы, то вопросов нет.
        Оператору можно разделять заказы по префиксу типа SS4096 IM1678 и тд.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите