Перенос сайта novatrade.by на 1С-Битрикс и его доработка
12.03.2014 Запустили наш новый проект novatrade.by.Проект состоял из 2-х этапов:
- перенос старого каталога на 1С-Битрикс в полном объеме;
- доработка сайта.
Хочу более подробно остановиться на некоторых моментах реализации возникшей задачи.
Входная информация: довольно крупный интернет-магазин (номенклатура около 2500 наименований), работающий при этом с большим количеством поставщиков, каждый из которых предоставляет прайсы в excel-файлах различной структуры. Ситуация частая в условиях нашего рынка.
Как поддерживать актуальность информации о наличии товаров и цене на сайте?
После выбора файла вместо кнопки выбора появляется кнопки «Изменить» и «Очистить». Кнопка «Изменить» предназначена для выбора иного xls-файла; кнопка «Очистить» - для очищения поля ввода.
Нажатие на кнопку «Загрузить» позволит запустить скрипт обновления каталога, который импортирует все выбранные ранее xls-файлы в систему bitrix.
По завершению импорта отображается информация о том, сколько позиций найдено, не найдено и сколько товаров каталога обновлены, а так же возможность перейти к полным спискам.
Особенность нашего модуля для 1С-Битрикс заключается в том, что для каждого прайса заданы индивидуальныe правила обработки данных. Так же у клиента отпадает необходимость в доплате за разработку нового обработчика при появлении очередного прайса со своей личной структурой хранения данных. Всего лишь нужно один раз настроить правила обработки для конкретного поставщика (какие данные из какого столбца брать, какие страницы обрабатывать).
Система так же позволяет указывать, какую наценку применять для товаров от конкретного поставщика и необходимо ли включать НДС при формировании цены для конечного потребителя.
Обновление информации на сайте происходит на «конкурсной» основе: на сайт попадёт информация из прайса, в котором цена с учётом НДС и всех наценок будет ниже, а товар будет в достаточном количестве присутствовать на складе, чтобы не создавался искусственный дефицит.
После того, как все прайсы загружены и обработаны системой, появляется сводная информация.
С помощью нее можно узнать:
- Какие товары были найдены и обновлены (с указанием «победившего» поставщика и предложениями от других поставщиков);
- какие позиции из прайсов не были найдены на сайте.
Все ненайденные товары попадают в отдельный инфоблок в административной части сайта как отдельные товары, менеджерам компании остается лишь заполнить свойства товара и перенести его в каталог продукции.
Учтено и то, что наименование позиций в прайсе может не соответствовать наименованию товаров на сайте. Для этого для товаров введено дополнительное поле «Уникальный код», которое так же участвует в поиске по прайсам.
В случае, если в прайсе от поставщика присутствует продукция, которая не реализуется интернет-магазином, в списке не найденных продуктов появляется «мусор», который затрудняет работу менеджера компании. Во избежание накопления «мусора» создан справочник, в который можно добавлять эти самые ненужные позиции из прайса. В дальнейшем такие товары после обработки будут попадать сразу в справочник ненужных товаров.
Так же одним из требований к системе была возможность просматривать историю импорта у конкретных товаров и автоматически изменять статус у товаров, которые более месяца не обновлялись.
В целом, на создание данной системы ушло несколько недель. В процессе разработки программисты столкнулись с неприятной неожиданностью – некоторые поставщики делают свои прайс-листы защищенными от изменений. В связи с этим пришлось задействовать навыки программирования на «Python».
Заказчик остался доволен. Проект в итоге размещен на виртуальном сервере на площадке Support.by.