При заказе с самовывозом нет данных покупателя в емейл-уведомлениях, документах

Где возникла проблема: Multi-Vendor 4.14.1.SP1 RU Стандарт, в более ранних версиях также. На простом CS-cart также, проверила на демо. Не знаю, в какой версии сломалось, на моей версии 4.9.2 все нормально, обновляться точно не буду.
Суть проблемы: Суть - при заказе самовывозом данные получателя (ФИО, телефон) подменяются информацией по пункту выдачи (названием, адресом и телефоном ПВЗ). В емейл-уведомлениях нет ФИО и телефона получателя.
Как воспроизвести проблему: На демо воспроизводится, нужно создать магазин вендора как точку самовывоза. Настройки: Администрирование - поля профиля - покупатели: Адрес доставки: все галки, кроме Адрес2 и тип адреса, Контактная информация: все галки, кроме “Компания”, Данные плательщика не запрашиваю вообще. Заполняю всю эту информацию в профиле пользователя.
Оформляю заказ с самовывозом из ПВЗ, магазина продавца и пр. На емейл приходит уведомление без данных получателя, без данных контакта. То есть нет ни ФИО, ни телефона вообще никакого.

На данный момент больше волнует именно проблема с уведомлениями, не могу с ними справиться.
Какие переменные/сниппет добавить в шаблон, чтобы в письме было ФИО и телефон покупателя?
image емейл-уведомление

Взаимосвязанно: В документах только информация по плательщику, подтягивающаяся из Контактных данных. Если данные получателя отличаются от плательщика, получателя НЕТ в документах (счет, упаковочный реестр, детали заказа), НЕТ их и в ЛК как покупателя, так и администратора.
Для таких случаев нужно видеть в документах не только плательщика, но и ФИО, телефон получателя

Далее скрины

Данные пользователя


Счет
Упаковочный реестр
Заказ в ЛК админа
Заказ в ЛК покупателя

2 лайка

Подтверждаю, такая же ерунда и у меня в 4.14.1.SP1.

Уже давным давно писал об этом в HelpDesc. Судя по ответу можно было подумать, что будто это так и было задумано. Однако, предложили вариант, который может быть и вам подойдёт, как временное решение:

В качестве альтернативы вы можете отредактировать шаблон, вставив в него дополнительный вывод информации. На данный момент в меню Администрирование > Уведомления > Документы существует условие, которое задает вывод адреса ПВЗ если в заказе выбран пункт самовывоза:

{% if pickup_point.is_selected %} {{ snippet("pickup_point") }} 
{% else %} {{ snippet("ship_to") }} {% endif %}

Вы можете вставить в условия также вывод информации о клиенте следующим образом:

{% if pickup_point.is_selected %} {{ snippet("pickup_point") }} {{ snippet("ship_to") }}

{% else %} {{ snippet("ship_to") }} {% endif %}

Таким образом в письме будут отображаться информация как о ПВЗ, так и о клиенте.

Данная проблема не является багом. По умолчанию в шаблонах документов нет данных получателя, если выбрана доставка в пункт самовывоза, но шаблоны можно изменить как вам нужно. Я создала запрос на добавление информации о получателе в шаблоны документов, если выбрана доставка в пункт самовывоза. Это может быть добавлено в одной из будущих версий.

Чтобы изменить шаблон документа вы можете использовать решение, предложенное выше, или изменить сниппет следующим способом (пример решения для документа Счет):
На странице Администрирование > Уведомления > Документы > Счет перейдите на вкладку Сниппеты и откройте сниппет Пункт выдачи (pickup_point).
Для добавления имени, фамилии и телефона добавьте

 <p style="margin: 0px; padding-bottom: 5px; font-family: Helvetica, Arial, sans-serif;">
        {% if u.s_firstname %}
            <strong>{{u.s_firstname}} {{u.s_lastname}}</strong>
        {% else %}
            <strong>{{u.firstname}} {{u.lastname}}</strong>
        {% endif %}
  </p> 
 <p style="margin: 0px; padding-bottom: 5px; font-family: Helvetica, Arial, sans-serif;">
        {% if u.s_phone %}
            <bdi>{{u.s_phone}}</bdi>
        {% else %}
            <bdi>{{u.phone}}</bdi>
        {% endif %}
    </p>

например, после этого кода

<h2 style="margin: 0px; font-size: 22px; font-family: Helvetica, Arial, sans-serif; color: #444444; text-transform: uppercase; padding-bottom: 20px; border-bottom: 3px solid #e8e8e8; margin-bottom: 20px;">{{__("ship_to")}}</h2>

Этим же способом можно изменить сниппеты для других документов.

Если потребуется помощь, напишите нам в HelpDesk.

2 лайка

Спасибо!

Спасибо, уже оплатила эту информацию в HelpDesk.