Разработка LMS + CRM для учебного центра по охране труда и промышленной безопасности

Система для компании АНО ДПО УЦ «ЭКСПЕРТ»

О компании

Учебный центр «ЭКСПЕРТ» — образовательная организация из Новосибирска, специализирующаяся на обучении по программам охраны труда, пожарной безопасности, первой помощи и рабочим профессиям. Центр обучает сотрудников предприятий по всей России — как очно, так и дистанционно.

ЭКСПЕРТ сегодня — это:
  • Обучение по десяткам направлений: от охраны труда до профессиональной переподготовки;
  • Работа с корпоративными заказчиками (B2B) — предприятия обучают своих сотрудников;
  • Дистанционное обучение по всей России;
  • Лицензированная образовательная деятельность с выдачей официальных документов об обучении.
Сайт компании — https://uc-expert.pro/

Задача

С ростом количества контрагентов и учеников учебный центр столкнулся с необходимостью:
  • Перевести весь процесс обучения в единую цифровую систему — от подачи заявки до выдачи документа;
  • Дать контрагентам (корпоративным клиентам) личный кабинет для управления обучением своих сотрудников;
  • Автоматизировать формирование групп, экзаменов, документов и отчётности;
  • Создать полноценную LMS-платформу с курсами, тестами и экзаменами для слушателей;
  • Обеспечить работу нескольких филиалов из единой системы.

Решение

Мы разработали комплексную систему, объединяющую CRM для управления контрагентами и заявками, LMS для дистанционного обучения и ERP-модули для управления документами, комиссиями и расписанием.

Система включает интерфейсы для трёх типов пользователей:
  • Для сотрудников учебного центра (администраторы, методисты, менеджеры, преподаватели):
- Управление структурой учебного центра с поддержкой филиалов;
- Гибкая настройка ролей и доступов сотрудников;
- Ведение базы контрагентов с интеграцией DaData для автозаполнения реквизитов;
- Управление заявками от контрагентов;
- Создание и редактирование курсов с иерархией направлений;
- Конструктор содержания курсов: текст, PDF, видео, ссылки, задания и тесты;
- Управление учебными планами;
- Настройка экзаменов с гибкими параметрами (время, количество попыток, порог прохождения);
- Формирование комиссий для аттестации;
- Управление группами обучающихся;
- Генерация документов по шаблонам (удостоверения, протоколы, акты);
- Расписание работы комиссий и занятий;
- Календарь с отпусками, задачами и расписанием;
- Система уведомлений;
- Загрузка сканов документов с QR-кодами;
- Подробная отчётность.

  • Для контрагентов (корпоративных клиентов):
- Личный кабинет с обзором обучений своих сотрудников;
- Каталог доступных курсов с демо-просмотром;
- Создание и управление заявками на обучение;
- Управление сотрудниками-слушателями;
- Уведомления о переаттестации сотрудников.

  • Для учеников-слушателей:
- Личный кабинет с перечнем назначенных курсов;
- Прохождение курсов в интерактивном формате;
- Тренировка перед экзаменом;
- Сдача экзамена с автоматической проверкой;
- Просмотр результатов и документов;
- Уведомления о назначенных обучениях и результатах.

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

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

Проект развивался итерационно: сначала было разработано MVP — базовая версия системы, покрывающая основные потребности учебного центра. Затем последовали три этапа доработок, каждый из которых значительно расширял функциональность:
  • MVP — ядро системы: управление структурой УЦ, контрагенты, курсы, группы, экзамены, документы, личные кабинеты контрагентов и слушателей;
  • Доработки 1 — добавление филиальности, расписания работы комиссий, каталога курсов для контрагентов, демо-просмотра курсов, создания заявок контрагентами;
  • Доработки 2 — автоматическое формирование групп по заявкам, доработка работы с документами слушателей;
  • Доработки 3 — управление отделами компании, QR-коды для документов, полноценный модуль календаря с задачами и занятиями.
Прототип системы включал в себя интерфейсы для следующих типов пользователей:
  • Администратор и сотрудники учебного центра (с гибкими ролями);
  • Контрагент (корпоративный клиент);
  • Ученик-слушатель.

Функционал

Разработанный нами веб-сервис предоставляет возможности для управления всем циклом работы учебного центра — от приёма заявки и зачисления слушателя до прохождения курса, сдачи экзамена и выдачи документа.

Веб-сервис выполняет следующие функции:
  • Управление структурой учебного центра с поддержкой нескольких филиалов;
  • Управление сотрудниками УЦ, их ролями и гибкими доступами к разделам;
  • Настройка типов документов и их шаблонов для автоматической генерации;
  • Учёт контрагентов с интеграцией DaData;
  • Управление заявками контрагентов с воронкой статусов;
  • Конструктор содержания курсов с поддержкой различных типов материалов;
  • Гибкая настройка экзаменов и тестирования;
  • Управление составами комиссий и расписанием их работы;
  • Управление группами обучающихся с автоматическим формированием;
  • Формирование документов по настраиваемым шаблонам;
  • Календарь с задачами, занятиями, отпусками и днями рождения;
  • Система уведомлений по всем основным событиям;
  • Личные кабинеты для контрагентов и слушателей.
Интересные особенности системы

Гибкая система ролей

В системе реализована настраиваемая система ролей для сотрудников учебного центра. Помимо предустановленных ролей (Администратор, Руководитель, Методист, Преподаватель, Менеджер) можно создавать собственные роли с тонкой настройкой доступов к каждому разделу и действию внутри него.

Филиальность

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

Интерфейс сотрудника учебного центра

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

Структура учебного центра и филиальность

В разделе «Структура УЦ» управляется организационная структура учебного центра. Здесь можно настроить логотип, наименование, контактные данные компании, а также создать филиалы с собственными отделами и сотрудниками.

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

Управление ролями и сотрудниками

Раздел «Роли сотрудников» позволяет создавать произвольные роли и тонко настраивать их доступы. Для каждого раздела системы задаётся уровень доступа: просмотр, создание, редактирование, удаление. Это позволяет точно распределить полномочия между сотрудниками.
Раздел «Сотрудники» содержит полную информацию о каждом сотруднике: личные данные, должность, роль, закреплённый отдел и филиал. Предусмотрено управление отпусками и отгулами с автоматическим отображением в календаре.

Контрагенты и заявки

Раздел «Контрагенты» — это полноценная CRM-составляющая системы. При создании контрагента реализована интеграция с сервисом DaData: достаточно ввести ИНН, и система автоматически заполнит все реквизиты — наименование, КПП, ОГРН, адрес, банковские данные и другое.

Карточка контрагента содержит несколько вкладок:
  • Основная информация с реквизитами;
  • Связанные контрагенты (подразделения);
  • Ученики-слушатели от данного контрагента;
  • Заявки на обучение.
Заявки от контрагентов проходят через воронку статусов. К каждой заявке прикрепляются файлы и документы, а также формируется список слушателей с их персональными документами. В доработках была реализована автоматическая генерация групп обучения на основе заявок и расписания комиссий.

Курсы и направления обучения

Раздел «Курсы» построен на основе иерархической структуры направлений. Направления могут быть вложены друг в друга на любую глубину, что позволяет создать удобную классификацию. Внутри направлений располагаются курсы.

Каждый курс содержит множество настроек:
  • Основная информация: код, наименование, языковая группа, ответственные (методист, преподаватель, менеджер);
  • Теги для фильтрации;
  • Документы, привязанные к курсу;
  • Учебный план с разбивкой по темам и видам занятий;
  • Содержание курса — материалы и задания;
  • База билетов и тестов;
  • Настройки экзамена.

Конструктор содержания курса

Один из ключевых модулей системы — конструктор содержания курса. Он позволяет наполнять курс различными типами учебных материалов:
  • Текстовые материалы с форматированием;
  • PDF-документы с встроенным просмотром;
  • Изображения;
  • Видеоматериалы — как загруженные файлы, так и ссылки на внешние видеоплееры;
  • Ссылки на внешние ресурсы (отображаются через iframe);
  • Задания с кратким ответом;
  • Тестовые задания с выбором одного или нескольких вариантов ответа (включая вариант с изображениями).
Материалы и задания группируются по разделам. Для каждого раздела и материала можно задать время, необходимое для его изучения. Предусмотрены гибкие настройки прохождения: можно сделать так, чтобы слушатель обязательно проходил разделы последовательно, или открыть свободную навигацию.

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

Экзамены и тестирование

Настройки экзамена задаются на отдельной вкладке страницы курса и включают:
• Время на прохождение экзамена;
• Количество вопросов в билете;
• Порог прохождения (минимальный балл);
• Количество допустимых попыток;
• Возможность включить тренировку перед экзаменом;
• Период, в который экзамен доступен для прохождения (настраивается на уровне группы).

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

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

Комиссии и расписание

Раздел «Комиссии» позволяет формировать составы аттестационных комиссий, назначая в них сотрудников учебного центра с указанием их роли (председатель, член комиссии, секретарь).

Для комиссий настраивается расписание работы — с указанием дат, времени, филиала и максимальной ёмкости (количество слушателей, которых можно принять за сеанс). Расписание используется при автоматическом формировании групп из заявок контрагентов.

Группы обучающихся

Раздел «Группы» предоставляет функционал для управления группами обучающихся. Каждая группа привязана к курсу и комиссии, имеет период обучения и список учеников.

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

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

Формирование документов

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

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

Календарь и задачи

Раздел «Календарь» объединяет несколько типов событий:
• Задачи сотрудников с возможностью назначения исполнителей, сроков и статусов;
• Занятия с привязкой к группам и аудиториям;
• Отпуска и отгулы сотрудников;
• Дни рождения сотрудников.

Календарь поддерживает отображение по дням, неделям и месяцам, с фильтрацией по филиалам и типам событий.

Справочники

В системе реализовано более 15 справочников, позволяющих настраивать и расширять данные системы:
Типы файлов заявок, документы слушателей, статусы заявок, теги курсов, должности контрагентов, отделы контрагентов, темы учебного плана, виды занятий, формы обучения, а также справочники для интеграции с государственными системами — ФИС ФРДО (виды документов, программы профессионального обучения, наименования профессий, квалификационные разряды) и ЕИСОТ (программы обучения).

Интерфейс контрагента

Пользователям с ролью «Контрагент» доступен собственный личный кабинет. В рамках доработок кабинет контрагента был существенно расширен и по масштабу приблизился к полноценной самостоятельной системе.

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

Каталог курсов — контрагент может просматривать доступные курсы учебного центра и изучать их в режиме демо-просмотра: содержание, учебный план, материалы и структуру экзамена.

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

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

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

Документы — просмотр и скачивание сформированных документов по обучениям.

Интерфейс ученика-слушателя

Пользователям с ролью «Ученик» доступен компактный и понятный личный кабинет.

Мои курсы — страница со списком назначенных курсов. Для каждого курса отображается прогресс прохождения, статус и доступные действия: продолжить изучение материалов, пройти тренировку или сдать экзамен.

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

Уведомления — слушатель получает уведомления о назначенных обучениях, приближающихся экзаменах и их результатах.

Итоги

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

В результате учебный центр «ЭКСПЕРТ» получил комплексную систему, которая автоматизирует все ключевые бизнес-процессы: от приёма заявки и управления контрагентами до проведения дистанционного обучения с экзаменами и автоматической генерацией документов.

Для разработки данного проекта мы используем следующие технологии:
• PHP (8.3);
• Laravel (11.x);
• Vue.js (3.x);
• PostgreSQL (14.x).
Выбор не случайный — стек технологий эффективный, данные технологии достаточно популярны.

А для вашей компании наши специалисты могут создать с нуля систему, которая будет отвечать всем вашим потребностям.
24 МАРТА/ 2026
Есть похожая задача?
Напишите нам и мы сделаем предварительную оценку стоимости вашего проекта
Напишите в Телеграм — @vslongcat
Или в WhatsApp — +79648538373