Как вывести в письме начисленные за заказ баллы
Чтобы собрать параметр для вывода начисленных баллов, используйте следующие составляющие:
-
Базовый параметр
Order(для автоматических рассылок по конкретному заказу) илиRecipient.Orders.FilterBySegment("X").Take(N)(для вывода заказов клиента без привязки к событию); -
AppliedPromotions— обращается ко всем акциям в заказе; -
Функция
GetEarnedBonusPoints()— отбирает все начисления баллов за заказ:

- Дальше — по задаче:
TotalAmount— выводит все полученные баллы.
Параметр учитывает возвраты и отмены, поэтому выводит актуальное количество.
ByPromotion— используется для разбивки начислений по акциям, по каждой из которых можно вывести:Amount— количество баллов;Coupon.Code— использованный промокод;Promotion.Name— название акции.
Если акция применилась по нескольким позициям, каждое начисление по акции выводится отдельно.
Например, есть заказ с двумя позициями. По акции получено в целом 200 баллов, по 100 на каждый товар. Хоть акция и одна, для системы это два разных начисления на каждую из позиций, поэтому параметр
ByPromotionвыведет каждое из них отдельно.
Примеры верстки по задачам.
Вывести все начисленные за заказ баллы:
За заказ получено баллов: ${Order.AppliedPromotions.GetEarnedBonusPoints("OsnovnojSchet").TotalAmount}
"OsnovnojSchet" — название балльного счета; может отличаться от проекта к проекту.
Разбивка по акциям:
В том числе:
@{for bonus in Order.AppliedPromotions.Discounts.GetBonusPointsDiscounts("OsnovnojSchet").ByPromotion}
<br>${bonus.Amount} по акции ${bonus.Promotion.Name}.
@{end for}