F
Fand_igor

Развитие CRM-мышления и кастомной разработки на Битрикс24

Отдельным направлением моего профессионального развития стала работа с 1C-Битрикс24 как с большой корпоративной платформой. Для меня это было не просто знакомство с новой CMS или коробочным продуктом, а погружение в экосистему, где CRM, задачи, бизнес-процессы, документы, отчёты, HR-контур, уведомления, вебхуки и кастомные модули живут в единой среде.

Этот проект важен для меня как этап расширения инженерного и продуктового взгляда на CRM-системы. Через практическую работу с Битрикс24 я глубже проработал идеи, связанные с корпоративными порталами, автоматизацией процессов, ролями, интеграциями и построением прикладных модулей поверх готовой платформы.

Что это дало мне как разработчику

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

Что было изучено и проработано

  • структура корпоративного портала на базе Битрикс24;
  • устройство CRM, задач, проектов, бизнес-процессов, отчётности, маркетингового и HR-контуров;
  • логика кастомной разработки в local/, включая собственные компоненты, классы, обработчики событий, cron-скрипты и вебхуки;
  • работа с iblock, пользовательскими полями UF, справочниками и перечислениями;
  • внутренняя модель ролей, групп, подразделений и разграничения доступа;
  • интеграционные возможности через вебхуки, REST, cron и внешние уведомления;
  • кастомизация интерфейсов задач, канбана, договорного и отчётного контуров;
  • использование Битрикс как основы для корпоративной CRM с глубокой прикладной логикой, а не только как коробочного портала.

Что видно по проекту технически

  • в проекте развёрнут полноценный портал Битрикс24 с модулями CRM, Bizproc, BI, задачами, календарями, мобильным контуром, маркетингом, документами, отчётами и корпоративной структурой;
  • основная кастомная логика вынесена в local/, а не размазана по ядру;
  • в local/components собран большой набор собственных прикладных модулей:
  • договоры и платежные документы;
  • выработка и продуктивность сотрудников;
  • финансы, выручка и маржинальность;
  • отчёты по задачам и загрузке;
  • разработки, препроекты, системы и подсистемы;
  • внутренние формы и таблицы по предметным направлениям;
  • в local/php_interface/init.php подключены собственные обработчики событий и инициализация доменной логики;
  • в local/php_interface/init/company.php реализован слой доступа к сотрудникам, проектам, клиентам, помощникам проектов, подчинённым и правам по корпоративной структуре;
  • в local/php_interface/init/productivity.php реализованы обработчики выработки, напоминаний, привязок к договору и категории, а также сценарии на события задач и комментариев;
  • в local/cron собраны автоматические сценарии по контактам, договорам, организациям, уведомлениям, продуктивности, синхронизации пользователей и другим направлениям;
  • в local/webhooks оформлены внешние интеграционные точки для контактов, проектов, договоров, разработок, задач и продуктивности;
  • в проекте есть ручные кастомизации шаблонов Bitrix24, в том числе доработка карточки задачи и генерации PDF-документов.

Какие прикладные направления были особенно важны

  • Выработка и продуктивность
  • учёт трудозатрат по задачам;
  • привязка времени к договору и категории работ;
  • напоминания по комментариям и событиям;
  • календари, отпуска, сертификаты, реестры и управленческие таблицы;
  • Договорный контур
  • договоры, платежные поручения, потенциальные суммы и связанные отчёты;
  • контроль уникальности регистрационных номеров и связанных записей;
  • таблицы, формы и отчётные представления для работы с договорами;
  • Компания и доступ
  • сотрудники, проекты, помощники проектов, руководители и подчинённые;
  • логика доступа по группам, ролям, проектам и корпоративной структуре;
  • отдельные сценарии доступа к договорам и контуру продуктивности;
  • Задачи и канбан
  • синхронизация стадий канбана и статусов задач;
  • кастомный приоритет задач;
  • правки пользовательского интерфейса задач;
  • административные сценарии переноса задач между пользователями;
  • Интеграции и автоматизация
  • вебхуки для карточек CRM и проектных сущностей;
  • cron-автоматизация;
  • Telegram-уведомления;
  • внешние обработчики и вспомогательные сервисы.

Что было сделано в рамках изучения и практических задач

  • разобрал структуру разработанных модулей продуктивности и связанных компонентов;
  • изучил, как устроены таблицы, формы, фильтры, пользовательские поля и справочники в Битрикс24;
  • проработал календарный и отчётный контур на уровне frontend и backend-логики;
  • исправлял ошибки отображения и структуры ответов в прикладных модулях;
  • дорабатывал фильтрацию, пользовательские сценарии и представление данных;
  • прорабатывал использование пользовательских полей для отображения прикладной информации в профиле сотрудника;
  • изучал принципы работы AJAX-обработчиков Bitrix, внутренних action-маршрутов и формата data.result;
  • системно разбирал, как на практике строятся кастомные модули поверх готовой CRM-платформы.

Что видно по git-истории

  • вносил изменения не только в интерфейс, но и в backend-модули, cron и интеграционный слой;
  • развивал модульную структуру проекта (local/components, local/cron, local/webhooks, local/php_interface) и поддерживающую документацию;
  • оформил и расширял слой инициализации в init.php: подключение модулей, пользовательских типов и обработчиков событий;
  • добавил API-обработчик для заявок из Telegram-бота с записью данных в Битрикс24;
  • дорабатывал блок выработки: ограничения по времени и интервалам, проверка дат, валидация прав пользователя;
  • исправлял логику сохранения и закрывал риски, связанные с SQL-инъекциями;
  • улучшал UI задач и учёта времени: фильтрация, сортировка, сценарные проверки;
  • дорабатывал производственный календарь и логику доменных URL для разных окружений.

Практическая ценность кейса

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

Моя роль

  • изучал и структурировал архитектуру корпоративного портала на Битрикс24;
  • разбирал прикладные модули, точки расширения и кастомную доменную логику;
  • выполнял практические доработки в модулях продуктивности, календарях, задачах, сертификатах и связанных пользовательских сценариях;
  • занимался безопасностью, исправлением логики сохранения данных и ограничением нежелательных сценариев ввода;
  • прорабатывал интеграцию с внешними источниками через Telegram, вебхуки и API-обработчики;
  • участвовал в структурировании модульной разработки в local/ и в документировании проекта;
  • анализировал, как через Битрикс24 реализуются задачи CRM, задачника, договорного контура, HR и отчётности;
  • использовал этот опыт как базу для дальнейшего развития собственного взгляда на CRM-системы, автоматизацию и внутренние платформы.

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

  • PHP
  • 1C-Битрикс24
  • CRM
  • Bizproc
  • iblock
  • UF-поля
  • jQuery
  • JsRender
  • Select2
  • AJAX
  • cron
  • webhooks
  • Telegram-интеграции