Настройка фильтров парсинга цен поставщика/конкурента
Настройка фильтра парсинга цен поставщика/конкурента производится на вкладке "Настройки фильтра при парсинге" соотвествующих настроек поставщика или конкурента. Доступны два типа фильтров:
- Фильтр по умолчанию
- Фильтр по шаблону
Настройка фильра по умолчанию:
- Выберите тип фильтра "Фильтр по умолчанию"
- Задайте диапазоны цен, МРЦ, количества в наличии и сроков доставки
- Нажмите "Сохранить"
Настройка фильтра по шаблону:
- Выберите тип фильтра "Фильтр по шаблону"
- Задайте шаблон
- Нажмите "Сохранить"
Для написания шаблона мы используем язык Scriban. Scriban - это быстрый, мощный, безопасный и легкий язык сценариев. Подробнее с языком можно ознакимиться здесь.
Шаблон на вход должен получать объект offer(описание смотри ниже), а возращать один из трех типов данных:
- true
- false
- модифицированный объект offer (можно оставлять только изменяемые поля, остальные сохранят свои значения)
Пример модифицированного объекта offer
{
Category: offer.Category,
Vendor: offer.Vendor,
Name: offer.Name,
Ean: offer.Ean,
Article: offer.Article,
SellerCode:offer.SellerCode,
Price: offer.Price,
MinRetailPrice: offer.MinRetailPrice,
InStockAmount: offer.InStockAmount,
DeliveryTime: offer.DeliveryTime
}
Пример шаблона
if offer.Price > 10 && offer.InStockAmount> 40
ret {
Category: "Новая Категория",
Vendor: "Новый бренд"
}
else
ret false
end
В результате выполнения фильтра дальше в сопоставление пройдут только предложения с входной ценой больше 10 и с количеством в наличии больше 40. Кроме того у всех товаров, удовлетворяющих первому условию категория будет заменена на "Новая категория", а бренд "Новый бренд". Все остальные свойства (Name, Article, SellerCode, Price, MinRetailPRice, InStockAmount, DeliveryTime) будут взяты из исходных данных.
Помимо данных, которые есть в модели, можно вернуть значение специального свойства "SellerId". Это требуется, если нужно разбить общий файл на несколько поставщиков в зависимости от некоторого условия. Пример:
if offer.OriginalRecord.Param["Гарантия"] == "12"
ret {SellerId: 4}
end
ret true
В результате всем товарам с гарантией в 12 месяцев будет назначен поставщик с Id=4.