Вывести количество полных дней, которое прошло с определенного события

Вывести количество полных дней, которое прошло с определенного события

RetailCRM Tips and Tricks by Alexey Erm

Иногда требуется вывести менеджеру информацию, сколько дней прошло с определенного события. Например если заказ хранится в пункте выдачи уже более 16 дней, либо заказ ожидает оплаты более 5 дней. Разницу вычислять необходимо от какой-то определенной даты и удобнее всего это делать от даты изменения статуса. Например от статуса «Ожидает в пункте выдачи» или «Ожидает оплаты».


В коде шаблона примените следующее выражение:

{{ (("now"|date("U") - order.statusUpdatedAt|date("U"))/60/60/24)|round(0, 'floor') }}

Данный код покажет разницу в полных днях между текущим моментом и датой последнего изменения статуса.


Комбинируя и дополняя условия можно более тонко настроить оповещения менеджерам. Например в тексте оповещения можно написать следующий код:

Заказ {{ order.number }} ожидает в пункте выдачи уже {{ (("now"|date("U") - order.statusUpdatedAt|date("U"))/60/60/24)|round(0, 'floor') }} дней.
{% if ((("now"|date("U") - order.statusUpdatedAt|date("U"))/60/60/24)|round(0, 'floor')) >= 30 %}
   Оформить возвратную накладную в службе доставки.
{% elseif ((("now"|date("U") - order.statusUpdatedAt|date("U"))/60/60/24)|round(0, 'floor')) >= 16 %}
  Позвонить клиенту и если клиент отказывается забирать, то оформить возвратную накладную в службе доставки, либо продлить срок хранения по просьбе клиента.
{% elseif ((("now"|date("U") - order.statusUpdatedAt|date("U"))/60/60/24)|round(0, 'floor')) >= 11 %}
  Напомнить клиенту об истечение срока хранения.
{% elseif ((("now"|date("U") - order.statusUpdatedAt|date("U"))/60/60/24)|round(0, 'floor')) >= 6 %}
  Напомнить клиенту, что заказ в пункте выдачи.
{% endif %}


Код из примера выведет текст оповещения

Если прошло более 6 дней:

Заказ 123-456-789 ожидает в пункте выдачи уже 6 дней. Напомнить клиенту забрать заказ.

Если прошло более 11 дней:

Заказ 123-456-789 ожидает в пункте выдачи уже 11 дней. Напомнить клиенту об истечение срока хранения.

Если прошло более 16 дней:

Заказ 123-456-789 ожидает в пункте выдачи уже 16 дней. Позвонить клиенту и если клиент отказывается забирать, то оформить возвратную накладную в службе доставки, либо продлить срок хранения по просьбе клиента.

Если прошло более 30 дней:

Заказ 123-456-789 ожидает в пункте выдачи уже 30 дней. Оформить возвратную накладную в службе доставки.


Особенности:

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


#уведомление #шаблон #twig


__________________________

❤️ Поблагодарить автора 💸

__________________________

✍️ Предложить тему публикации
__________________________


Настройка RetailCRM / Триггеры RetailCRM / Валидации RetailCRM / Примеры RetailCRM / Хаки RetailCRM / Секреты RetailCRM

Оригинальный пост https://t.me/retailcrm_tips/16

Подписывайте на канал RetailCRM Tips and Tricks

Список статей по настройке RetailCRM

Report Page