После весьма успешного интернет-магазина Shell к нам обратилась компания "Глобус" из города Хабаровска (они также являются официальными дистрибьюторами Shell). У них была сложная, но интересная задача. 

Задачи, цели, нюансы

Задача состояла в том, чтобы автоматизировать работу с постоянными клиентами. Есть специфика: почти все товары импортируются из Японии, а их цена зависит от курса Юаня (большая часть товаров из Китая). Бумаги не напасешься чтобы печатать прайс-листы при смене курса валют! :)

Весь учет «Глобуса» построен на «1С: Управление торговлей», с которой нужно было интегрировать сайт (выгрузка товаров, обмен заказами). Кстати пока писалось ТЗ, наш клиент плавно переехал на новую версию 1С: Предприятия и 1С: УТ соответственно (всем бы так!).

Кроме того у клиента было огромное желание чтобы на сайт выгружались контрагенты, а не только товары. Те кто внимательно читал наши предыдущие статьи по интеграции интернет-магазина с 1С знают, что типовой модуль обмена этого не может. Но нет ничего невозможного, если есть сотрудники с прямыми руками и светлой головой, а у нашего клиента такие были.

Ну и пожалуй самое интересное: персональные цены. Когда компания работает на рынке и работает с оптовиками есть такая специфика, что менеджеры со временем каждому клиенту раздают персональные скидки (иногда на конкретные товары, а иногда на целые группы).
В предыдущих проектах мы уже сталкивались с подобными бизнес-процессами. Однако в тех случаях все знания о том, кому какую скидку обещали не были зафиксированы в учетной системе. В Глобусе же напротив вся эта информация хранилась в 1С.

Для того, чтобы доработать обмен с 1С сперва была сделана типовая выгрузка товаров. Полученные XML-файлы (CommerceML) мы подвергли изменениям, которые зафиксировали в техническом задании. 
Такое изменение естественно это потребовало и доработки обмена на стороне сайта.
Пара обсуждений, просьб перенести данные из одних узлов в другие и все было готово.

В результате мы получили:
  • выгрузку контрагентов на сайт
  • выгрузку информации о персональных скидках на сайт
  • расчет цен на сайте в зависимости от курсов валют и персональных скидок

Как менеджер проекта могу сказать, что самым сложным в этом проекте было различие в 7 часовых поясов. Когда мы приходили на работу наш клиент уже уходил домой. Созванивались после работы, договаривались, обсуждали узкие места.
Яндекс_Карты.png


А еще как раз в момент программирования и запуска проекта в Хабаровске было наводнение, думаю вы помните…
habarovsk.jpg

Несмотря на эту сложность проект запустили, а время реакции наших коллег не уменьшилось ни на минуту.

Технические аспекты

С точки зрения программиста, проект получился тоже неординарный. ТЗ пестрило необычными задачками, решать которые было одно удовольствие. Взять, например, список адресов доставки. Согласно ТЗ «Во вкладке Адреса доставки клиент может увидеть все свои адреса для доставки и добавить новые, отредактировать существующие. Название адреса является ссылкой на редактирование записи.». То есть, адреса — это самостоятельная сущность, потенциально инфоблок. Но эти данные используются и на этапе оформления заказа! Решилось файлом result_modifier, который, если пользователь указал ID своего профиля доставки, записывал значения оттуда в скрытые поля заказа.

Следующее интересное требование связано с многоскладовостью. У клиента три склада в разных городах, и сайт должен был это отражать. Мы сделали для каждого пользователя настройку — товары с каких складов ему показывать, по умолчанию показывали все. Чтобы клиент не запутался в маслах и смазках на разных складах, корзину выводили блоками, для каждого города свою. Вышло так, что Клиент захотел, чтобы заказы по разным городам оформлялись порознь, и в один заказ не могли попасть товары из разных городов.
Корзина товаров
Пришлось пойти на хитрость. Как только покупатель нажимал кнопку «оформить заказ» в городе A, товары из складов городов Б и В автоматически добавлялись в «отложенные» и не участвовали в процедуре оформления заказа. А при следующем посещении корзины товары «доставались» обратно.

Больше всего времени отняла работа с ценами, и немалая часть этой задачи была потрачена на простое понимание механизма скидок. Если вкратце, все завязано на 5 сущностях — пользователь, скидка, тип цены, товар, конкретное значение скидки для пользователя по конкретному типу цены. Все это можно представить в виде семантической сети.

Семантическая сеть
Скидка задается коэффициентом — 1,5 означает наценку 50%, 0,95 — 5% скидку, а 1 — это продажа товаров по обычной цене. Как видно на схеме, нет прямой связи между пользователями и товарами, только посредством типов цен и групп скидок. При этом для нового пользователя покупка каких-либо товаров невозможна до тех пор, пока менеджеры на сайте или в файлах импорта не укажут его скидку. Но это закономерно, так как случайных пользователей в этом интернет-магазине нет.

Вот такой получился «нестандартный» проект.

Оцените статью
06.03.2014
Понравилась статья?
Поделитесь ссылкой с друзьями и коллегами!

Статьи по теме

Биллинг ИТ-компании на laravelОбычно мы рассказываем, как принесли пользу клиенту. Но сегодня у нас будет особый разговор, ведь заказчиком биллинговой системы ИТ-компании была… ИНТЕРВОЛГА! ...
Почему мы рекомендуем начинать с внедрения базовой версии b2b-платформыК нам в компанию ИНТЕРВОЛГА часто обращаются клиенты с заявками на внедрение личного кабинета дилера с длинным списком желаемых функций. Однако мы рекомендуем н...
Функция b2b-платформы — отправка рекламаций в CRMОптовые покупатели — ключевой сегмент экономики торгово-производственного предприятия, и их удовлетворённость напрямую влияет на успех бизнеса. Новый функционал...
Как b2b-платформа передает в 1С данные по новым контрагентам В этой статье мы расскажем, что происходит после того, как клиент зарегистрировал в б2б-кабинете новое юридическое лицо и сделал заказ, а также покажем, как...
Автоматизация и оптимизация бизнес-процессов — лонгрид, чтобы не запутаться Статья будет полезна всем, кто хочет улучшить эффективность своего бизнеса или узнать больше о возможностях автоматизации бизнес-процессов для повышения ко...
10 обязательных задач поддержки сайта на БитриксСтатья посвящена организации поддержки сайтов на Битрикс. Здесь не только про решение технических проблем и устранение багов. Здесь про развитие живых проектов...
Мы работаем по одному из двух форматов:
  • аренда команды (от 2 человек, не менее 3 месяцев);
  • итерации с фиксированной ценой (1-3 месяца длительностью).
ИНТЕРВОЛГА предоставляет:
  • регулярные онлайн-планерки с заказчиком;
  • квалифицированных специалистов;
  • организованную команду (находятся в одном помещении, что упрощает решение рабочих вопросов);
  • полную прозрачность и регулярность отчетов о результатах.
Ключевые услуги:
  • нагруженный интернет-магазин;
  • личный кабинет;
  • оптовые продажи — B2B-платформа;
  • маркетплейс;
  • технический аудит сайта;
  • Битрикс24 — корпоративные HR-порталы;
  • Битрикс24 — построение CRM-системы;
  • Битрикс24 — личные кабинеты сотрудников;
  • Битрикс24 — аудит портала;
  • 1С — интеграция с другими системами;
  • 1С — доработка системы;
  • маркетинг — комплексное интернет-продвижение;
  • маркетинг — продвижение для B2B.
Хотите получать лучшие статьи от INTERVOLGA раз в месяц?
Подпишитесь на рассылку — спамить не будем