Логема
Компания «ТД ТИНКО»: ускорение поиска и оптимизация заказа типовых решений из PDF-каталога
Логема
WDA
2023
#Поддержка и развитие сайта#Программирование сайта

Компания «ТД ТИНКО»: ускорение поиска и оптимизация заказа типовых решений из PDF-каталога

3859 
Логема
Логема Россия, Волгоград
Поделиться:
Компания «ТД ТИНКО»: ускорение поиска и оптимизация заказа типовых решений  из PDF-каталога
Клиент

ТД ТИНКО

Сфера

Оборудование

Регион

Россия, Москва

Сдано

Декабрь 2021

Задача

КЛИЕНТ

Компания «ТД ТИНКО» — дистрибьютор российских и зарубежных брендов оборудования систем безопасности. Компания поставляет оборудование по всей России. В 2021 году ее клиентами были 25 000 организаций. Каждый день на сайт заходят ≈ 40 000 человек, чтобы выбрать оборудование из 32 000 номенклатурных позиций.

ЦЕЛЬ ПРОЕКТА

«ТД ТИНКО» разработал для клиентов комплекты готовых решений, однако заказать их можно было только по телефону. Другой проблемой был поиск по сайту. Существующее решение хорошо работало на небольших и средних базах данных, однако на высоконагруженном сайте «ТД ТИНКО» давало сбои. Еще одной проблемой был расчет доставки — расчет по пяти ТК занимал слишком много времени.

ЗАДАЧИ ПРОЕКТА

1. Внедрить на сайт заказы комплектов из PDF-каталога типовых решений

2. Перенести поиск по сайту на поисковую систему Elasticsearch

3. Настроить расчет доставки так, чтобы клиент видел стоимость и срок поставки сразу по всем транспортным компаниям

Решение

Для решения поставленных задач был использован следующий стек технологий: 1С-Битрикс, Vue, ElasticSearch.

1Внедрить на сайт заказы комплектов из PDF-каталога типовых решений

ПРОБЛЕМА

Системы безопасности — это технически сложные решения, их подбор и инсталляция требуют высокой квалификации. В помощь своим клиентам «ТД ТИНКО» раз в год выпускает журнал с типовыми решениями. Каждое решение содержит комплект оборудования под определенную задачу, например, устройство системы видеонаблюдения магазина. Проектировщики, интеграторы и монтажные организации используют эти решения для создания систем безопасности.

Проблема была в том, что типовые решения находились в журнале в PDF-формате. По ним не было поиска на сайте, а комплект оборудования из решения невозможно было добавить в корзину покупателя. Типовые комплекты существовали только в базе 1С, поэтому клиентам приходилось звонить в офис и оформлять заказ по телефону. Это было неудобно и отнимало время у клиентов и сотрудников «ТД Тинко».

Необходимо было реализовать на сайте поиск и покупку комплектов оборудования из журнала.

Технически задача выглядела так:

— Спроектировать обмен, чтобы специалисты по 1С могли выполнить работу по формированию файлов выгрузки для сайта.

— Запрограммировать импорт типовых решений на стороне сайта.

— Доработать обмен заказами, дополнив выгрузку типовыми решениями.

— Запрограммировать на сайте разделы и механизмы, которые позволят покупать новый вид товаров.

РЕАЛИЗАЦИЯ

Сайт «ТД ТИНКО» работает на 1С-Битрикс. И в 1С и в Битриксе есть понятие комплекта. При этом обе системы понимают под этим одно и то же — товар, который для пользователя выглядит одним товаром, а для учетной системы — несколькими. Проблема в том, что 1С и Битрикс не умеют обмениваться этими данными.

Стандартные модули обмена в этих системах не поддерживают выгрузку комплектов на сайт. Нам нужно было разработать модуль на основе XML-выгрузки силами своей команды. Что мы и сделали.

Теперь стала доступна выгрузка из 1С на сайт всей информацию о типовых решениях:

— описания;

— изображения;

— свойства для фильтрации;

— мета-информация для редактора типовых решений.

КАК РЕШЕНИЕ РАБОТАЕТ В СТРУКТУРЕ ДАННЫХ САЙТА

Данные из XML-файлов импортируются в инфоблоки, аналогично прочим товарам. У типовых решений есть свойства, цены, перечень оборудования и вспомогательная мета-информация.

Программа 1С ежедневно формирует XML-файл с типовыми решениями. На сайте есть CRON-задача, которая проверяет наличие файла и по FTP загружает его на сайт.

Клиенты «ТД ТИНКО» не всегда оформляют заказы на сайте. Они могут сделать это в офисе или по телефону. Чтобы такие заказы отображались в личных кабинетах на сайте, мы запрограммировали импорт заказов, созданных офлайн на стороне 1С. Эти заказы отображаются на сайте в режиме «только для чтения». Пользователь видит ход выполнения заказа, но не может внести в него изменения.

2Перенести поиск по сайту на поисковую систему Elasticsearch

ПРОБЛЕМА

На старой версии сайта поиск был реализован через самописные запросы к базе данных. Решение было создано на MySQL и отлично работало на небольших и средних базах данных. Однако у компании «ТД ТИНКО» высоконагруженный сайт: объемы данных и количество поисковых запросов постоянно увеличиваются. MySQL не предназначен для таких задач. Он часто вел себя непредсказуемо из-за множества одновременных запросов к базе. Для поиска товара в большой номенклатуре со сложной логикой нужно было другое решение.

РЕАЛИЗАЦИЯ

Для оптимизации поиска мы предложили внедрить Elasticsearch. Это одна из самых популярных поисковых систем. Elasticsearch — масштабируемая утилита полнотекстового поиска и аналитики. Она в режиме реального времени хранит, ищет и анализирует большие объемы данных. В отличие от решения на MySQL, Elasticsearch быстро и легко находит товары, написанные с опечатками или в других формах.

3Настроить расчет доставки так, чтобы клиент видел стоимость и срок поставки сразу по всем ТК

ПРОБЛЕМА

Компания «ТД ТИНКО» работает с пятью ТК. При заказе пользователь отправляет запрос, а каждая ТК  делает свой расчет. Время расчета у всех компаний разное, поэтому результат по всем ТК в среднем занимает одну минуту. По меркам пользователей, минута ожидания — это вечность. Нужно было оптимизировать и ускорить процесс расчета.

РЕАЛИЗАЦИЯ

Мы изучили документацию API пяти служб доставки и все нюансы обмена информацией. Запрос пользователя с сайта отправляется одновременно в пять ТК, а ответы обрабатываются параллельно. Время обработки ответа от каждой ТК мы ограничили 30 секундами. Если за этот период ответ от какой-либо ТК не пришел, то пользователь увидит только 4 результата. Выберет ТК из текущего списка и быстрее оформит заказ.

Для определения адресов мы используем сервисы КЛАДР и ФИАС, а для удобства пользователей подключили сервис подсказок DaData. Он выдает подсказки по отдельным частям адреса и упрощает поиск.

Результат

Что изменилось в работе компании «ТД ТИНКО» после решения поставленных задач.

1. ВНЕДРЕНИЕ ЗАКАЗА КОМПЛЕКТОВ ИЗ PDF-КАТАЛОГА ТИПОВЫХ РЕШЕНИЙ НА САЙТЕ

Для удобства пользователей все решения на сайте разбиты под сферы применения:

На странице каждого типового решения есть схема и состав комплекта оборудования с указанием цены как всего комплекта, так и каждой единицы оборудования. Пользователь может изменить количество оборудования в соответствии со своей задачей и оценить изменение стоимости проекта. Однако из комплекта нельзя удалить элементы, на которых основано типовое решение.

Проект мы делали в 2018 году, сейчас работаем над другими задачами. Количество затраченных часов за 2021 год — 1746, или 150 часов ежемесячно.

2. ПЕРЕНОС ПОИСКА ПО САЙТУ НА ПОИСКОВУЮ СИСТЕМУ ELASTICSEARCH

2.1. СНИЗИЛИ ВРЕМЯ ОТВЕТА НА ПОИСКОВЫЙ ЗАПРОС ДО 200 МИЛЛИСЕКУНД

Такое время отклика позволяет на лету и без видимых задержек перестраивать выдачу, пока пользователь вводит запрос.

2.2. ОПТИМИЗИРОВАЛИ ПОДДЕРЖКУ АКТУАЛЬНОГО ИНДЕКСА

Индекс актуализируется за 20 секунд, а добавление товара в индекс занимает 0,3 секунды.

2.3. ДОРАБОТАЛИ ЛОГИКУ ПОИСКА ПО САЙТУ И СДЕЛАЛИ ЕГО УДОБНЕЕ.

А также расширили функциональные возможности поиска и добавили:

— исправление опечаток в поисковом запросе;

— запросы по фразам, где важен порядок слов;

— поиск по отдельным критериям:

- слово;

- артикул;

- фраза;

— настройку многоязычного поиска по наименованиям товаров;

— параллельную обработку больших объемов данных, с мгновенным подбором наилучшего соответствия запросу;

— чтение или запись данных в режиме реального времени — в пределах одной секунды.

3. НАСТРОЙКА РАСЧЕТА СТОИМОСТИ И СРОКОВ ДОСТАВКИ СРАЗУ ПО ВСЕМ ТРАНСПОРТНЫМ КОМПАНИЯМ

Покупатель начинает вводить адрес, а сервис DaData помогает найти его быстрее. Запросы и обработка ответов выполняются параллельно, поэтому через несколько секунд пользователь увидит результаты. Время обработки запроса не превышает 30 секунд. У покупателя будет положительный пользовательский опыт: он быстро выберет службу доставки и оформит заказ.

Отзыв клиента

Клещенок Г. С.
Клещенок Г. С.

Генеральный директор ООО «ТД Тинко»

ООО «ТД Тинко» благодарит компанию «Логема» за проявленный высокий профессионализм в разработке и технической поддержке корпоративного сайта.

Большой опыт в разработке проектов крупного масштаба, ответственность и доброжелательность сделали сотрудничество приятным, плодотворным и эффективным.

Выражаем отдельную благодарность за адекватное понимание потребностей компании и внимательное отношение к нашим непростым пожеланиям. Такой подход к клиентам демонстрирует не только высокий профессионализм, но и готовность работать с нестандартными задачами.

Желаем успехов в профессиональной деятельности и надеемся на дальнейшую совместную работу.

скан отзыва
https://www.tinko.ru

Стек технологий


Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Логема с удовольствием обсудит вашу задачу

Оставить заявку