Дилеры под контролем — автоматически отслеживаем цену розничной продажи
NDA! Этот проект защищён соглашением о неразглашении. Мы не в праве предоставить детали технологии и название бренда/организации. Но можем описать принцип и обезличенный результат работы.
Естественно, что проект защищен соглашением, закрывающим подробности и заказчика проекта. Заказчик-производитель не планировал афишировать информацию о проводимом контроле.
Проблемы производителя
Реализация продукции по согласованным ценам — важная задача для Заказчика проекта. Необходим контроль и понимание стоимости реализации продукции конечным покупателям.
- требуется ежедневный контроль за состоянием цен;
- количество дилеров для контроля: 23;
- история анализа должна сохраняться за период 1 год;
- в случае выявления несоответствия нижней границы цены, ответственный сотрудник заказчика должен получить автоматическое уведомление;
- уведомление должно содержать ссылку на страницу с заниженной ценой, указание минимальной и установленной дилером цен, разницу цен;
- система должна поддерживать загрузку минимальных рекомендованных Заказчиком цен из 1С.
Виртуальная платформа должна быть опубликована в Германии.
Система контроля
Так как мониторинг подразумевал работу с официальной дилерской сетью, задача немного упрощалась. Все товары имели стандартное именование на сайте дилера, а также, содержали уникальный артикул, присвоенный поставщиком.
Этот факт позволил сократить время на разработку модулей сбора данных, а также, снизить стоимость разработки из-за ухода от микросервисной архитектуры.
Было принято решение в этом проекте использовать связывание различных программных модулей через базу данных:
- подход снижает стоимость разработки и время на создание модулей;
- все модули работают на одном сервере без сложных логических связей и зависимостей;
- в качестве базы данных используется MySQL;
- в качестве языка для модулей сбора данных — Java
- веб-интерфейс, система обработки и анализа данных, система уведомления написаны на PHP;
- виртуальный сервер построен на базе Linux Debian.
Разработка велась одновременно и для сбора данных и для их обработки. После того, как структура хранения была спроектирована и утверждена, каждая из групп разработки приступила к созданию кода.
После того, как все программные компоненты были готовы, решено было запустить систему в недельную опытную эксплуатацию для контроля и проверки цен.
Нагрузка на сервер в момент сбора и анализа данных позволила скорректировать параметры виртуальной платформы и немного снизить стоимость аренды виртуального сервера за счёт снижения объёма оперативной памяти и отказа от 2 ядер в пользу одного.
Повторный сбор показателей 3-х дневного периода работы сервера в новой конфигурации показали, что запаса надёжности и ресурсов достаточно для бесперебойной работы программного комплекса.
Проект был документирован, созданы резервные копии программных модулей и базы данных и система поступила в промышленную эксплуатацию.
На данный момент она функционирует уже 2 года 8 месяцев и помогла выявить недобросовестных дилеров. Количество дилеров за время работы выросло с 23 до 47.