Фільтр по моделі авто для магазину запчастин
10000 грн. 10 днів

Задача включає три етапи.
1. Встановлення й налаштування модуля.
2. Формування бази даних авто й первинна прив'язка наявних товарів до моделей авто.
3. Забезпечення автоматичного поповнення бази авто й прив'язки до неї нових товарів після синхронізації магазину з постачальником.
Перший етап звичайний для ОпенКарт — інсталяція модуля, виявлення помилок інсталятора, виправлення, переінсталяція модуля, напаштування, виправлення помилок модуля, виправлення, підгонка верстки модуля під кастомну тему.
За більш як десять років спілкування з ОпенКарт мені попадалися лише зо два десятки модулів, які не потребували танців з бубном і мухоморами, на цей раз виключення не сталося.
На другому етапі потрібно напочатку створити базу моделей авто. З модулем поставляється готова база, але вона не співпадає з номенклатурою моделей авто, що застосовується у базі постачальника і співставлення між ними виявилося дуже непростим. З огляду на те, що магазин працює лише з одним постачальником, ніж співставляти базу модуля з базою постачальника, мані видалося кращим виходом створення нової бази одразу відповідною до номенклатури постачальника.
Після створення бази необхідно прописати прив'язку товарів до моделей авто. В самому модулі передбачено РУЧНУ прив'язку. Тобто, треба в адмінці відкрити картку товара й на окремій вкладці поставити галочки, яким моделям авто ця запчастина підходить. З огляду на кількість товарів (близько 150 тисяч) та кількість прив'язок (для деяких запчастин треба поставити 30 - 50 галочок), така робота або займатиме неприйнятно довгий час, або коштуватиме неприйнятно дорого.
Виходячи з цього, треба було написати автоматичну прив'язку товарів до авто. Що і було зроблено. Програма автоматично прописувала кожному товару відповідність до моделей, згідно з інформацією з бази постачальника. Через те, що загальна кількість прив'язок сягнула в результаті ЗА десять мільйонів, ця робота зайняла близько десяти діб.
На третьому етапі необхідно було зробити автоматичне поповнення бази авто в разі, якщо у постачальника з'явиться товар, прив'язаний до моделі, якої ще нема в базі сайту, а також прив'язку нових товарів.
Для вирішення задачі створено окрему програму, побудовану на модульній архітектурі. Модулі, критичні до швидкості роботи й навантаження, написані на GoLang, оболонка — на PHP.
Стек технологій — PHP, Go, MySQL (MariaDB), MongoDB.

Робота додана: 04.11.23

Вгору