Розробка сайту автосервісу на 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Розробка сайту автосервісу на 1С-Бітрікс
Складна
від 1 тижня до 3 місяців
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Розробка сайту автосервісу на 1С-Бітрікс

Власник автомобіля шукає автосервіс, коли у нього вже є проблема. Він вводить «заміна масла Мінськ» або «кузовний ремонт недорого», потрапляє на сайт і хоче сразу зрозуміти дві речі: скільки це коштуватиме для його машини і коли він зможе її привезти. Якщо сайт не дає відповіді — клієнт дзвонить конкуренту.

Ключовий інструмент, який вирішує першу задачу, — калькулятор вартості ТО. Розберемо його реалізацію докладно.

Каталог послуг автосервісу

Послуги організовуються в інфоблоці з ієрархією розділів. Типова структура:

  • Технічне обслуговування — ТО-1, ТО-2, заміна масла, фільтрів
  • Кузовний ремонт — фарбування, рихтування, антикор
  • Діагностика — комп'ютерна, ходової частини, двигуна
  • Шиномонтаж — сезонна заміна, зберігання, балансування
  • Електрика — сигналізація, автозвук, додаткове обладнання

Властивості елемента: PRICE_FROM (number), DURATION_HOURS (number), CAR_TYPES (список — легкові, кроссовери, комерційні), DESCRIPTION_WORK (HTML — що входить у послугу). Прив'язка до марок через множинну властивість типу «Прив'язка до елементів» — не всі послуги доступні для всіх марок.

Калькулятор вартості ТО за маркою автомобіля

Калькулятор — головний конверсійний елемент сайту автосервісу. Клієнт вибирає марку, модель, рік випуску та пробіг — отримує вартість регламентного ТО з розшифруванням за роботами та запчастинами.

Архітектура даних. Довідники зберігаються в Highload-блоках — тут це не опціональна оптимізація, а необхідність. Довідник «марка — модель — покоління — двигун» для 50 популярних марок містить десятки тисяч комбінацій. У звичайному інфоблоці це буде катастрофа.

Highload-блок CarDirectory:

Поле Тип Приклад
UF_BRAND string Toyota
UF_MODEL string Camry
UF_GENERATION string XV70 (2017-)
UF_ENGINE string 2.5L 2AR-FE
UF_YEAR_FROM integer 2017
UF_YEAR_TO integer 2024

Highload-блок MaintenanceRegulation — регламент ТО:

Поле Тип Призначення
UF_CAR_DIR_ID integer Зв'язок з CarDirectory
UF_MILEAGE_KM integer Пробіг для ТО (10000, 20000...)
UF_WORK_ID integer Зв'язок з інфоблоком робіт
UF_PART_ID integer Зв'язок з каталогом запчастин (якщо є)
UF_PART_QUANTITY float Кількість (4 літри масла, 1 фільтр)
UF_IS_REQUIRED boolean Обов'язково або рекомендовано

Highload-блок ServicePricing — ціни на роботи за категоріями авто:

Поле Тип Призначення
UF_WORK_ID integer ID роботи
UF_CAR_CLASS enumeration Легковий / Кросовер / Позашляховик
UF_PRICE_WORK float Вартість роботи
UF_NORM_HOURS float Нормочаси

Алгоритм розрахунку:

  1. Клієнт вибирає марку → модель → покоління → двигун (каскадні AJAX-селекти, кожний наступний фільтрує за попереднім)
  2. Вводить поточний пробіг — система визначає найближче регламентне ТО (округлення вверх до кратного 10 000 або 15 000 залежно від виробника)
  3. Запит до MaintenanceRegulation за UF_CAR_DIR_ID та UF_MILEAGE_KM
  4. Для кожної роботи — підтягується ціна з ServicePricing за класом авто
  5. Для кожної запчастини — ціна з каталогу (якщо підключений склад) або з довідника середніх цін
  6. Результат оформлюється як таблиця: «робота — вартість роботи — запчастина — вартість запчастини — разом»
$regulations = MaintenanceRegulationTable::getList([
    'filter' => [
        'UF_CAR_DIR_ID' => $carId,
        'UF_MILEAGE_KM' => $nearestMileage,
    ],
])->fetchAll();

$total = 0;
$breakdown = [];
foreach ($regulations as $reg) {
    $workPrice = ServicePricingTable::getRow([
        'filter' => [
            'UF_WORK_ID' => $reg['UF_WORK_ID'],
            'UF_CAR_CLASS' => $carClass,
        ],
    ]);
    $partPrice = $reg['UF_PART_ID']
        ? getPartPrice($reg['UF_PART_ID']) * $reg['UF_PART_QUANTITY']
        : 0;

    $lineTotal = $workPrice['UF_PRICE_WORK'] + $partPrice;
    $total += $lineTotal;
    $breakdown[] = [
        'work' => getWorkName($reg['UF_WORK_ID']),
        'work_price' => $workPrice['UF_PRICE_WORK'],
        'part' => getPartName($reg['UF_PART_ID']),
        'part_price' => $partPrice,
        'required' => $reg['UF_IS_REQUIRED'],
    ];
}

Каскадні селекти. Реалізуються через AJAX-компонент або REST-ендпоінт. При виборі марки — запит моделей з фільтром UF_BRAND = 'Toyota'. При виборі моделі — запит поколінь. Кожен запит — DataManager::getList() з DISTINCT за потрібним полем.

Щоб каскад працював швидко, на Highload-блок CarDirectory створюються складені індекси: (UF_BRAND), (UF_BRAND, UF_MODEL), (UF_BRAND, UF_MODEL, UF_GENERATION).

Наповнення довідника. Основна біль. Регламенти ТО для 50 марок — це колосальний обсяг даних. Варіанти: ручне заповнення (довго, але точно), парсинг з відкритих джерел (каталоги виробників), покупка готової бази (TecDoc-сумісні довідники). У більшості проектів починають з 10-15 найпопулярніших марок і розширюють за необхідністю.

Онлайн-запис на сервіс

Запис простіше, ніж у салоні краси: немає прив'язки до конкретного механіка, є прив'язка до підйомника/боксу. Клієнт вибирає послугу, дату і зручний час. Система перевіряє завантаженість боксів.

Highload-блок ServiceBooking: UF_DATE, UF_TIME_START, UF_TIME_END, UF_BAY_ID (номер боксу/підйомника), UF_CLIENT_ID, UF_SERVICE_ID, UF_CAR_INFO (марка, модель, номер — текстове поле або зв'язок з CarDirectory).

Логіка слотів аналогічна: отримуємо робочий час боксу, вичитаємо займані інтервали, показуємо вільні. Тривалість визначається властивістю DURATION_HOURS послуги.

Інтеграція з 1С:Автосервіс

1С:Автосервіс зберігає замовлення-наряди, історію ремонтів, складські залишки запчастин. Інтеграція з сайтом вирішує кілька завдань:

  • Імпорт замовлень-нарядів у особистий кабінет — клієнт бачить історію обслуговування, прив'язану до VIN або номера
  • Синхронізація залишків запчастин — якщо на сайті є каталог запчастин, залишки оновлюються з 1С через CommerceML або REST
  • Передача онлайн-записів в 1С — запис з сайту автоматично створює попередній замовлення-наряд

Обмін через HTTP-сервіси 1С — публікується REST-ендпоінт на стороні 1С, Bitrix звертається до нього по cron. Формат — JSON або XML. Частота — кожні 15-30 хвилин для залишків, миттєво (webhook) для записів.

Особистий кабінет з історією обслуговування

Клієнт прив'язує автомобіль до профілю — вводить VIN або номер. Система підтягує з 1С всі замовлення-наряди за цим VIN. Клієнт бачить: дату візиту, виконані роботи, встановлені запчастини, пробіг на момент обслуговування.

Це потужний інструмент утримання. Клієнт повертається на сайт не тільки для запису, але й щоб дивитися, коли менялось масло і пора ли на наступне ТО.

Система може автоматично розраховувати дату наступного ТО на основі середнього пробігу клієнта і регламенту, відправляючи нагадування через email або SMS.

Каталог запчастин

Опціональний модуль. Якщо автосервіс продає запчастини — використовується стандартний модуль каталогу Bitrix (catalog). Товари синхронізуються з 1С через CommerceML. Важливо налаштувати торгові пропозиції для запчастин з прив'язкою до OEM-номерів і крос-номерів аналогів.

Акції та сезонні пропозиції

Інфоблок «Акції» з автоматичною публікацією/зняттям за датами (DATE_ACTIVE_FROM, DATE_ACTIVE_TO). Сезонні акції прив'язуються до типів послуг: шиномонтаж восени, кондиціонер влітку, антикор навесні. На головній сторінці виводяться через bitrix:news.list з фільтром по активності.

Терміни реалізації

Масштаб Склад Термін
Однопункційний автосервіс Каталог послуг, запис, акції, базовий ЛК 6-8 тижнів
Автосервіс з калькулятором ТО + калькулятор (10-15 марок), інтеграція з 1С, історія обслуговування 12-16 тижнів
Мережа автосервісів + мультисайт, каталог запчастин з залишками, повний довідник ТО, B2B-портал 18-24 тижні

Що визначає бюджет

Калькулятор ТО — найтрудомісткіша частина, і основні витрати приходяться не на код, а на наповнення довідника регламентів. Розробка логіки розрахунку займає 2-3 тижні, а наповнення бази для 50 марок — може займати стільки ж. Варто починати з мінімального набору марок, які найчастіше обслуговуються, і розширювати за аналітикою пошукових запитів.