Enterprise-level модуль для коробочной версии 1С-Битрикс. Построен по принципам DDD-light и service-layer архитектуры.
Без хака ядра. Без “битрикс-магии”. Готов к расширению и поддержке.
Это не учебный пример и не демо из документации. Проект демонстрирует production-подход к разработке модулей Bitrix.
Архитектура рассчитана на реальное расширение и поддержку.
---LMS Manager — модуль управления студентами и курсами:
- Студенты
- Курсы
- Связь многие-ко-многим
- Грид с фильтрацией и пагинацией
- Массовые операции
- AJAX-контроллеры
- SEF-маршрутизация
- Полноценный install / uninstall
HTTP → Component → Service → DTO → ORM → DB
- ORM — только работа с БД
- DTO — нормализация входных данных
- Service — бизнес-логика
- Components — UI-слой
- Install / Seeder — установка и наполнение данными
Чёткое разделение ответственности. Без логики в шаблонах.
- PHP 8+
- Bitrix D7
- ORM (DataManager)
- main.ui.grid
- PageNavigation
- Controllerable (AJAX actions)
- CSRF / Authentication filters
- Service layer
- DTO pattern
- CRUD студентов
- CRUD курсов
- Связь студент ↔ курс (Many-to-Many)
- Пагинация
- Фильтрация
- SEF-маршрутизация
- Транзакционная установка БД
- Генерация тестовых данных при установке
/lms/ — список
/lms/{ID}/ — просмотр
/lms/{ID}/update/ — редактирование
/lms/add/ — создание
local/modules/lms.manager │ ├── install/ │ ├── files/ │ │ ├── components/ │ │ └── public/ │ ├── step.php │ ├── uninstall.php │ └── index.php │ ├── lib/ │ ├── Orm/ │ │ ├── StudentTable.php │ │ ├── CourseTable.php │ │ └── StoreTable.php │ │ │ ├── Application/ │ │ ├── DTO/ │ │ └── Service/ │ │ │ └── Install/ │ └── Seeder.php
StudentTable:
- FULL_NAME
- PHONE
- GPA
- AGE
- BIRTHDATE
- ACTIVE
CourseTable:
- TITLE
- DESCRIPTION
- SEMESTER
- TEACHER
- ACTIVE
- PRICE
StoreTable (Many-to-Many):
- STUDENT_ID
- COURSE_ID
- GRADE
- Логика в шаблонах
- Прямые SQL-запросы
- Глобальные переменные
- Изменение ядра Bitrix
- Монолитный компонент без разделения слоёв
- Скопируйте папку
lms.managerвlocal/modules/ - Админка → Marketplace → Установленные решения
- Установить модуль
Во время установки:
- создаются таблицы через ORM
- регистрируется правило URL rewrite
- копируются компоненты
- создаётся страница /lms/
- генерируются тестовые данные (Seeder)
Можно удалить:
- регистрацию модуля
- файлы
- таблицы БД (по выбору)
При установке создаётся:
- 100+ студентов
- 20+ курсов
- случайные связи
- оценки и данные
Это позволяет сразу тестировать:
- пагинацию
- фильтрацию
- грид
- производительность
- массовые операции
- PHP 8.1+
- 1С-Битрикс (коробка)
- MySQL / MariaDB
- Чёткое разделение слоёв
- Масштабируемость
- Без логики в шаблонах
- Без модификации ядра
- Совместимость с обновлениями Bitrix
- Поддерживаемый код
- Права доступа
- Tagged cache
- REST API
- Экспорт (Excel / CSV)
- Массовое редактирование
- HighloadBlock
- Логирование действий
- 1C-Bitrix
- Bitrix D7
- Bitrix ORM
- Bitrix Module
- PHP Backend
- Enterprise PHP
- Service Layer Architecture
- Modular Architecture
- LMS System
- Education Management
- Many-to-Many ORM
Murad
Telegram: @murad_pro_it
Instagram: @murad__it

