akiyatkin / dealers
Requires
- akiyatkin/fs: ~1
- infrajs/ans: ~1
- infrajs/catalog: ~1
- infrajs/excel: ~1
- infrajs/load: ~1
- infrajs/path: ~1
This package is not auto-updated.
Last update: 2019-02-20 19:12:29 UTC
README
Файл поставщика распадается на два файла.
- Оригинальный файл.xlsx - хранится в скрытой папке ~.prices/
- Файл в формате сайта.xlsx - хранится в папке каталога ~catalog/
Если аналогичный файл в формате сайта уже был, то он должен быт расформирован и объединён с новым или новый объединён со старым. Для оригинального файла пишется обработка достающая из него, без его изменения, данные, изменяемые поставщиком, с ключём для связи с данными в файле в формате сайта.
Артикул - Цена - Опт
Опции, как разбирать оригинальный файл без его изменения хранятся в файле ~prices.json. Например сколько строк сверху нужно отрезать и не использовать в разборе (start). Какие листы нужно игнорировать ignore. Файл prices.json разбит на секции с разными данными для разных поставщиков. В файле ~prices.php хранятся обработки для переноса нужных данных из прайса в каталог.
Установка
composer require akiyatkin/prices:~1
Использование с infrajs
После установки открыть /-prices/
Опция synonyms
Позволяет обращаться по одному имени к колонкам с разными названиями на разных листах
"Tantos":{
"synonyms":{
"Наименование":["Наименование товаров"]
},
"merge":true,
"start":6,
"price":"{Path.encode(~lower(Наименование))}",
"catalog":"{~lower(article)}"
}
Опция merge
Объединяет 1 сроку head со второй на случай если есть вертикальные объединения ячеек
Опция ignoreart
Массив ключей поиска в прайсе, которые нужно полностью проигноировать. Такое бывает когда имя группы было принято за позицию, но это группа и её можно не учитывать.