Доработки интернет магазина косметики и парфюмерии «RedBox»
Работа над интернет магазином RedBox.com.ua велась длительное время. За это время был доработан имеющийся и добавлен большой объем нового функционала. Был реализован функционал как для Front-End (витрина) так и для Back-End (администрирование) частей.
Сайт разработан на CMS Shop Script Lego Edition, к нему были дописаны следующие модули:
- модуль импорта;
- модуль подключения товаров по цвету/объему для помад и т.п. и парфюмерии;
- модуль фильтра в категории;
- модуль генерации отчета наличия товаров в магазине;
- модуль генерации экономических отчетов;
- модуль генерации отчета о товарах которые покупаются и их остаток.
Для интернет магазина косметики и парфюмерии был разработан модуль привязки товаров. Данный модуль позволяет пользователю быстро переключаться между товарами, отличающимися исключительно по цвету или по объему, что делает навигацию по магазину очень удобной и дружелюбной.
Модуль фильтра позволяет фильтровать товары по заданным параметрам. В данном случае параметрами выступают цена и производитель.
В процессе разработки модуля импорта было принято решение использовать нетрадиционный подход, т.к. импорт отличается своим нетрадиционным функционалом.
Суть заключается в том, что есть несколько прайсов, которые имеют свой порядковый номер (идентификатор) и процент надбавки. При импорте товаров в интернет магазин все товары, которые есть в наличии в прайсе обновляются, товары которые в прайсе имеют статус «не в наличии» — отображаются со статусом «на складе», а продуктам которые отсутствуют в прайсе, выставляется статус «нет на складе».
Таким образом появилась необходимость «держать в памяти» все продукты на сайте, а объем прайсов составлял по нескольку тысяч строк и скрипту не хватало времени на его выполнение (стандартное ограничение выполнения скрипта php — 30 секунд). Ввиду этого был разработан AJAX скрипт, который позволял разбить товары на партии и загружать их порционно.
Для сохранения данных о статусе товара, приходилось выгружать все товары которые были на сайте в массив (в трехмерный, т.к. стандартное ограничение количества элементов в массиве равно 1 000 элементов), и прогонять каждый раз в цикле, проверяя существует ли товар из прайса в магазине или нет и какой статус ему выставить.
Естественно этот массив выдавался php файлом в AJAX и после еще раз туда посылался и крутился в цикле до окончания прайса. Оставшиеся продукты принимали статус «нет на складе».
Модуль проверки наличия позволяет проверить наличие товаров в интернет магазине для контроля и быстрого доступа за наличием.
Модуль генерации экономических отчетов отображает стоимость товара в наличии, его стоимость, себестоимость и прибыль от его продажи.
Также модуль отображает в подробностях все заказы, которые были оформлены за этот месяц, их идентификационный номер, время заказа, сумму заказа, себестоимость и прибыль с заказа.
Модуль заказа товара позволяет генерировать отчет о товарах интернет магазина, заказанных за данный период, и посмотреть остаток данного товара для управления закупками.






