Войти на сайт
Логотип
Клиентам

Личный Кабинет АО «МБ Банк»

Вернуться к списку
  • Тип проекта:
    В2В
  • Тематика сайта:
    Финансы, бухгалтерия, банк
  • Редакция продукта:
    Стандарт
  • Сайт:
  • Партнер:

Разработка личного кабинета на 1С-Битрикс

Цель проекта

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

Создать интерактивный личный кабинет для клиентов компании, в котором пользователь может:

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

Менеджер может скачивать автоматически сформированные документы. Для менеджеров предусмотреть отдельный интерфейс модерации анкет с комментариями, уведомлениями и контролем статусов.

Основные работы

1. Создание инфоблока «Конструктор анкет»

  • Разработан инфоблок с 14 свойствами, часть которых представляет собой привязки к разделам и элементам этого же инфоблока для построения многоуровневых анкет.
  • Настроены связи между свойствами для динамического взаимодействия в публичной части.
  • Реализовано взаимодействие с внешним API DaData (адреса, ЕГРЮЛ, ИНН и др.) с обработкой в режиме AJAX.
  • Подключены сторонние библиотеки:
    • intlTelInput – для масок телефонов с кодами стран;
    • datepicker – для выбора дат.

 

2. Шаблоны анкет

Разработаны два шаблона для инфоблока:

  • «Большая анкета» – основной шаблон с многоуровневой вложенностью разделов и возможностью добавления элементов-подразделов.
  • «Поданкета» – вспомогательный шаблон, вызываемый при выборе определённых свойств в «Большой анкете».

Оба шаблона выводят интерактивные формы с элементами:

  • чекбоксы, выпадающие списки, вложенные поля, поля даты, адреса и загрузки файлов;
  • формы отправляются через AJAX и обрабатываются сервером, создавая соответствующие разделы и элементы в инфоблоке «Заявки».

 

3. Инфоблок «Заявки»

  • Хранит результаты заполненных анкет в виде разделов и элементов.
  • Добавлены свойства:
    • привязка к пользователю;
    • статусы заявок с обработчиком изменения статуса (автоматическая отправка уведомлений по email);
    • JSON-поля для хранения ответов анкеты, комментариев менеджеров и истории изменений.
  • Подключена библиотека PHPWord: при сохранении анкеты в обработчике AJAX автоматически формируются документы Word по шаблонам, утверждённым заказчиком.

 

4. Менеджерская часть

  • Создана отдельная группа пользователей «Менеджеры» с ограниченным доступом к административной панели.
  • Реализован интерфейс для просмотра заполненных анкет в пользовательском виде.
  • Добавлена возможность комментирования каждого поля анкеты:
    • комментарии сохраняются в инфоблоке «Заявки»;
    • при добавлении комментария пользователю присваивается статус «Требуются корректировки»;
    • пользователю отправляется уведомление о необходимости исправления.
  • Визуальная часть интерфейса содержит индикаторы наличия комментариев (в форме и в списке анкет).
  • Предусмотрена привязка менеджеров к заявкам.

 

5. Дополнительный функционал

  • Реализована версия сайта для слабовидящих.
  • Создан кастомный компонент регистрации с подтверждением входа по SMS (планируется проверка стабильности).
  • Разработан пользовательский компонент меню, отображающий список заявок и анкет текущего пользователя с указанием статусов и связей между анкетами и поданкетами.

Бизнес-логика анкетирования

Основная идея

Анкета не является статичной формой. Это динамический конструктор, который:

  • подстраивается под выбор пользователя (например, выбор одного пункта открывает дополнительные подразделы – «поданкеты»);
  • хранит всю структуру в виде элементов и разделов инфоблока «Конструктор анкет»;
  • использует привязки и свойства для вызова зависимых шаблонов.

Пример логики работы

  1. Пользователь начинает заполнять «Большую анкету».
  2. При выборе определённого значения (например, «Тип деятельности») автоматически подключается шаблон «Поданкета», где уточняются параметры.
  3. После заполнения анкета отправляется через AJAX:
    • данные сохраняются в инфоблок «Заявки»;
    • формируется новая запись, связанная с пользователем;
    • система присваивает статус «Отправлена».
  4. Менеджер получает уведомление, открывает заявку, видит анкету в том же виде, что и пользователь, и может:
    • оставить комментарий к каждому полю;
    • изменить статус («требует корректировки», «на проверке», «одобрена»);
    • при необходимости внести свои правки.
  5. Пользователь получает уведомление по email о комментариях или смене статуса и может внести исправления прямо в личном кабинете.
  6. После утверждения анкеты система формирует Word-документы по шаблону (через PHPWord) и сохраняет их в заявке.

 

Архитектура решения

Компонент

Назначение

Особенности реализации

Инфоблок «Конструктор анкет»

Хранение структуры анкет, свойств и связей

Множество (с возможностью добавления) свойств, часть – привязки к элементам и разделам; взаимодействие с DaData API

Шаблон «Большая анкета»

Основной интерфейс ввода данных

Многоуровневая вложенность, динамическое подключение «Поданкет»

Шаблон «Поданкета»

Зависимые формы

Вызов при определённых значениях свойств, AJAX-обновление

Инфоблок «Заявки»

Хранение результатов анкетирования

JSON-структура ответов, комментариев и истории изменений

Менеджерский интерфейс

Проверка и комментирование анкет

Привязка менеджеров к заявкам, статусы, почтовые уведомления

Пользовательский кабинет

Просмотр и редактирование анкет

AJAX-отправка, визуальные индикаторы комментариев, статусы

Документообразование (PHPWord)

Формирование файлов Word

Два шаблона документов по формам заказчика

Доп. модули

Повышение UX и доступности

Маски телефонов (intlTelInput), Datepicker, версия для слабовидящих

 Пользовательские роли

Пользователь

  • Заполняет анкету и поданкеты.
  • Получает уведомления о комментариях.
  • Вносит правки и повторно отправляет анкету.

Менеджер

  • Проверяет анкету в административном интерфейсе.
  • Добавляет комментарии к полям.
  • Меняет статусы и генерирует итоговый документ.
  • Контролирует поток заявок в своей зоне ответственности.

Администратор

  • Настраивает шаблоны анкет и поданкет.
  • Управляет справочниками и структурами инфоблоков.
  • Создает шаблоны Word-документов.

Технологический стек

  • CMS: 1С-Битрикс (редакция «Бизнес»)
  • Frontend: JavaScript (AJAX), intlTelInput, datepicker
  • Backend: PHP, Bitrix API, PHPWord
  • Интеграции: DaData API (адреса, ИНН, ЕГРЮЛ)
  • Хранение данных: инфоблоки с JSON-свойствами
  • Безопасность: разграничение прав (группы «Пользователи», «Менеджеры»), валидация данных, уведомления о статусах

Результат

Создана полностью кастомная система личного кабинета с адаптивной структурой анкет, двусторонней обратной связью между пользователем и менеджером, автоматическим документооборотом и расширяемой архитектурой. Система поддерживает масштабирование – добавление новых анкет, типов заявок и логики обработки без изменения базового кода. Решение полностью интегрировано в инфраструктуру Bitrix, поддерживает AJAX-обновления и автоматическую генерацию документов.