Перейти к содержанию
yesday

создание/настройка парсера прайсов для формирования файла заливки (максистор 1.5.5.1) + редактирование карточки товара

Рекомендуемые сообщения

Синхронизация остатков магазина с прайсами поставщиков:

 

Поставщики ежедневно предоставляют нам остатки с ценами в файле excel. Всего около 10 прайсов (могу предоставить), которые пересекаются по позициям примерно в 70%.

 

Задача: каждый день синхронизировать остатки в систему опенкарт в автоматическом режиме в определённое время. Другими словами, нужен парсер, который будет в следующей последовательности (или более удобной, если такая имеется) выполнять алгоритм:

 

1.      Сканировать 10+ прайсов (файлы эксель и ссылки на файлы эксель на сайтах)

 

2.      Формировать массив товаров общий из всех прайсов по 1 каждого разного товара.

Важно замечание 1: в разных прайсах товары отличаются по названию, но по сути – это одно и то же. Например: Agent Provocateur Petale Noir edp 30ml ж, AGENT PROVOCATEUR PETALE NOIR edp 30 ml spray (L) NEW и т.п. То есть, названия на 90% идентичны, но их может быть 10 вариантов и они могут отличаться на какие-то буквы/цифры/символы/и т.п. Парсер должен выбрать из имеющихся в наличии идентичных товаров самый дешёвый (все цены в прайсах указаны в одном номинале) и отдать его во вновь созданный массив товаров с ценой и признаком прайса, с которого этот товар взят.

Важное замечание 2: товары. Которые отличаются объёмом (мл, ml) должны переходить в массив как отдельные.

 

3.      Этот массив должен быть сверен с файлом заливки (дам пример) на сайт и в случае совпадения (приблизительно те же 90% как и в п.2) в файл заливки должна передаваться: информация о прайсе, с которого взят товар (название файла прайса) и цена по следующей формуле (должна быть предусмотрена возможность ее корректировки по необходимости):

Цена в файле заливки округлена до целого числа = 8,2 * 1,35 * цена товара в массиве (если цена в массиве < 20)   

Цена в файле заливки округлена до целого числа = 8,2 * 1,3 * цена товара в массиве (если цена в массиве >20 < 50)

Цена в файле заливки округлена до целого числа = 8,2 * 1,25 * цена товара в массиве (если цена в массиве >50<100)

Цена в файле заливки округлена до целого числа = 8,2 * 1,2 * цена товара в массиве (если цена в массиве >100)

Итого 2 переменные, в остальном файл заливки ничем не дополняется

 

4.      Поле файла заливки «Есть/нет в наличии» должно заполняться в зависимости от того, найдено ли совпадение с массивом. Все, что отсутствует в массиве, но есть в файле заливки, должно переходить автоматически в статус «нет в наличии».

 

5.      Все товары массива, по которым не найдены соответствия с файлом заливки, выводятся в отдельный вновь созданный файл с полями: название товара, цена из прайса, признак прайса (название файла прайса).

 

6.      По тем товарам, которых нет, исходя из п.4, кнопка «купить» в карточке товара должна меняться на кнопку «предзаказ». И при ее активации (с предупредительным сообщением-подтверждением: «Вы хотите оставить нам сообщение о предварительном заказе данного товара, чтобы когда он появился в наличии, мы с Вами связались»?) должно отправляться сообщение на info@glace.com.ua (пока не активна) со ссылкой на товар предзаказа, а пользователя должно редиректить на специальную страницу с текстом: «Спасибо за Ваше обращение, как только данный товар появиться в наличии, наши менеджеры свяжутся с Вами». Данный пункт используется только для товаров, для которых нет ни одного варианта с объёмом в наличии. Из следующего задания понятно будет, почему так.

 

 

Разбивка карточки товара по объёмам и вывод разных цен в карточку и на предпросмотр в зависимости от выбора объёма из выпадающего списка.

Здесь идет пересечение с Важным замечанием 2 из п.2 первого задания . А именно: Каждый объём товара для файла заливки является отдельным товаром, а для покупателя в карточке товара – вариантом выбора из выпадающего списка. Как здесь: http://makeup.com.ua/product/917/

В случае отсутствия такого товара в прайсе (п.4 первого задания), объём должен быть исключен из выпадающего списка (не предлагаться для выбора пользователю, без предзаказа – как в п.6 первого задания).  Но, если завтра он появиться у поставщика, то точно также он должен добавиться к выбору.

Таким образом, каждый объём по сути будет являться отдельным товаром в учете и одновременно быть частью общей карточки данного товара, которая имеет одно название, описание, но разные цены и объёмы.

По умолчанию должен быть показан минимально доступный объём и его цена.

Важно1 ЧПУ страницы не должен меняться в зависимости от изменения объёма!

      Важно2  В предпросмотре карточки эта функция также должна быть реализована, как здесь http://makeup.com.ua/categorys/3/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.