Таблица oc_shipping_courier_track
Таблица oc_shipping_courier_track используется для связи номеров отслеживания курьерских служб с конкретными заказами. Эта функциональность часто добавляется сторонними модулями доставки или расширениями для автоматической генерации и привязки трек-номеров.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
order_id |
int |
Идентификатор заказа, к которому привязан номер отслеживания. Внешний ключ, ссылается на таблицу oc_order.
|
courier_id |
int |
Идентификатор курьерской службы. Внешний ключ, ссылается на таблицу справочника курьерских служб (часто oc_courier или подобную), если таковая используется расширением.
|
track_number |
varchar(255) |
Номер для отслеживания отправления (трек-номер), присвоенный курьерской службой. |
Как это работает
После оформления заказа и выбора способа доставки, который поддерживает генерацию трек-номеров (например, СДЭК, Nova Poshta, UPS), администратор или автоматизированная система может создать запись в этой таблице.
Запись связывает order_id с сгенерированным track_number и указывает на courier_id, чтобы система и клиент понимали, в какой службе отслеживать посылку.
Эта информация затем может отображаться в карточке заказа в админ-панели OpenCart, в истории заказов клиента в его личном кабинете, а также использоваться для автоматического получения статуса доставки через API курьерской службы.
Важно отметить, что данная таблица не является частью стандартной поставки OpenCart и создается конкретными модулями доставки. Поэтому ее структура и наличие могут варьироваться в зависимости от используемого расширения.
Пример SQL-запроса
Выбрать все заказы с номерами для отслеживания конкретной курьерской службы:
SELECT o.order_id, o.firstname, o.lastname, sct.track_number
FROM oc_order o
INNER JOIN oc_shipping_courier_track sct ON (o.order_id = sct.order_id)
WHERE sct.courier_id = 3;
Смотрите также
-
таблицу
oc_order,
которая хранит основную информацию о заказах -
таблицу
oc_order_history,
которая хранит историю статусов заказов