Добрый день!
Кто-то реализовал у себя печать трек-номеров в заказах?
Подключен метод доставки СДЕК, при обработки заказа создают трек-номер но нет возможности распечатать внутри магазина.
Добрый день!
Кто-то реализовал у себя печать трек-номеров в заказах?
Подключен метод доставки СДЕК, при обработки заказа создают трек-номер но нет возможности распечатать внутри магазина.
Добрый день!
Скажите пожалуйста, какая у вас версия магазина?
Тоже интересует такоя возможность.
Multi-Vendorv4.17.1
Будет проще заказать доработку, готовым модулем такое мало кому будет интересно, специфичная задача. К примеру, у нас есть модуль отслеживания заказов СДЭК, но даже в нем будет странно печать выглядеть только для него.
Вы имеете в виду отслеживание статусов заказов?
Этот MUSTHAVE :: Синхронизация статусов доставки из курьерских служб - Готовые модули, разработка, аддоны для CS-cart, 1c-Bitrix
да, этот
Человек это понимает и спрашивает в общем
Вообще надо лишь добавить переменную в массив значений, которые передаются для редактора макета печати, и через хук заполнить эту переменную значение трек номера в функции получения данных по заказу. Тогда эту переменную можно вставить в шаблон деталей заказа для печати.
Как я делал:
Можно через схему, но мне надо было быстро и поэтому мудрить не стал
/app/Tygh/Template/Document/Order/Variables/OrderVariable.php
/**
* @inheritDoc
*/
public static function attributes()
{
return array(
'order_id', 'company_id', 'issuer_id', 'user_id', 'tracking_number', 'shippings_method',
'total', 'subtotal', 'discount', 'subtotal_discount', 'payment_surcharge',
'display_subtotal', 'shipping_cost', 'timestamp', 'notes', 'details', 'company', 'payment_id',
'tax_exempt', 'tax_name', 'tax_total', 'lang_code', 'ip_address', 'tax_exempt_text', 'tax_name', 'tax_total',
'tax_subtotal', 'display_shipping_cost', 'secondary_currency', 'coupon_code', 'invoice_header', 'invoice_id_text',
'full_weight', 'mp_name', 'mp_order_id', 'mp_order_shipment_date_text',
добавил строчку
'full_weight', 'mp_name', 'mp_order_id', 'mp_order_shipment_date_text',
со своими переменными, значения которых надо выводить
Далее
цепляемся к хуку
fn_set_hook('get_order_info', $order, $additional_data);
и добавляем в $order нужный элемент с нужным значением (full_weight пришлось рассчитывать прямо в функции ядра, а ‘mp_order_id’ - поле в таблице orders, поэтому в функции ниже их нет)
function fn_avp_marketplaces_get_order_info(&$order, $additional_data)
{
if($order['mp_id'] > 0) {
$order['mp_name'] = db_get_field("SELECT mp_short_name FROM ?:avp_marketplaces WHERE mp_id = ?i", $order['mp_id']);
$order['mp_order_shipment_date_text'] = date("j m Y", $order['mp_order_shipment_date']);
}
return true;
}
Теперь я могу добавлять свом переменные в шаблн для печати деталей заказа, а вы по аналогии - вашу переменную с трек-номером в тот же шаблон для печати (переменная будет доступна для выбора в списке доступных значений слева)
PS
ну и раз пошла такая пьянка - добавлю
/app/Tygh/Template/Snippet/Table/ProductVariable.php
здесь можно добавить свои переменные для сниппета товаров (я добавил в коде ниже последнюю строчку)
public static function attributes()
{
return array(
'item_id', 'product_id', 'product_code', 'name', 'price', 'amount', 'product_status', 'product_url', 'deleted_product',
'discount', 'company_id', 'base_price', 'original_price', 'cart_id', 'tax', 'subtotal', 'display_subtotal',
'shipped_amount', 'shipment_amount', 'is_accessible', 'shared_product', 'unlimited_download',
'is_edp', 'edp_shipping', 'stored_price', 'counter', 'main_pair', 'image', 'options',
'storage_place', 'is_action',
и значения им присваивать через хук
fn_set_hook('get_order_items_info_post', $order, $v, $k);