1. Платформа B4: многообразие готовых модулей
для разработки
+
Докладчик:
Решения для электронного правительства и
Альберт электронизация государственных услуг
Габидуллин
Больше, чем технологии!
2. Архитектура
Возможность быстрого
расширения
Security функциональных
возможностей решения
Report
ECM7 Ядро Panel
Уменьшение количества Прикладное
решение
потенциальных ошибок
Больше, чем технологии!
3. Добавление и обновление
Сборку соответствующего модуля –> каталог
/modules
Рестарт приложения (веб-сервер/интерфейс)
Сборка из каталога /modules –> каталог /.modules
Больше, чем технологии!
4. Миграция БД
Модуль «ECM7»
Миграция базы данных –
процесс внесения изменений в
БД в ходе разработки
(структура)
Больше, чем технологии!
5. Миграция БД. Для чего?
Автоматизация процесса развертывания БД на
любом сервере
Исключение возможности появления ошибок
Независимость от используемой СУБД
Возможность отката структуры БД на более раннюю версию
Больше, чем технологии!
6. Миграция БД. Как?
Таблица в БД, хранящая При разработке последовательно
актуальную информацию об создаются классы с описанием
актуальной версии миграции необходимых изменений и
по каждому модулю. указанием номера версий.
SchemaInfo Up & Down
API Интерфейс
Используемый фреймворк Клиентский интерфейс
Клиентский интерфейс
ECM7 предоставляет API для для проведения
для проведения
выполнения миграций. миграций.
миграций.
Больше, чем технологии!
8. Безопасность и права доступа
Модуль «Security»
Аутентификация. Авторизация. Роли. Разграничение прав
пользователей.
Больше, чем технологии!
9. Безопасность и права доступа
Пользователь Роль Права
Редактирование
Администратор справочников
Василий Управление
… ролями
… Руководитель …
отдела
Редактирование
Анатолий состава отдела
Больше, чем технологии!
10. Безопасность и права доступа
• Пользователи
• Создание/Редактирование пользователей.
• Платформа предоставляет интерфейс для
добавления логики работы с
пользователями
При необходимости можно реализовать свою аутентификацию,
если логика должна отличаться от стандартной проверки логина и
пароля
Больше, чем технологии!
11. Безопасность и права доступа
• Роли
• Простой справочник
• Добавление/Редактирование/Удаление
ролей через интерфейс (inline-грид)
Больше, чем технологии!
12. Безопасность и права доступа
• Права доступа
• Класс-наследник PermissionMap, в
конструкторе которого перечисляются
права
Namespace("ERegion.Dictionary", "Справочники");
Permission("ERegion.Dictionary.Edit", "Редактирование");
CRUDandViewPermission("ERegion.Dictionary")
Больше, чем технологии!
14. Безопасность и права доступа
Проверка ограничений
На клиенте
сервере
• Возможность применять ограничения к отдельному клиентскому
компоненту
• Основной метод проверки прав – Grant. Передаем текущего
пользователя и название ограничения
• Плагины для применения ограничений:
• Плагин для применения ограничений к гриду
• Формирование меню вограничений к конкретный полям формы
• Плагин для применения зависимости от наличия тех или иных
прав
• ……
• Вспомогательные функции для применения ограничений
• Атрибуты для класса контроллера
• Вспомогательные функции для выбора компонентов, к которым
необходимо применить ограничение
Больше, чем технологии!
15. Отчеты
«Reports» и модуль «ReportPanel»
Вывод печатных форм отчетов в формате Word и Excel
Больше, чем технологии!
16. Отчеты
Reports
1 Является компонентом ядра
2 Предоставляет интерфейсы для генерации отчетов
3 Работает на основе шаблонов
Больше, чем технологии!
17. Отчеты. Reports. How To.
Добавление шаблона в ресурсы
Добавление класса-наследника
BaseReport
Добавление метода контроллера, отвечающего
за формирование и отдачу отчета на клиент
Добавление кнопки в клиентском интерфейсе
для обращения к соответствующему методу
контроллера
Больше, чем технологии!
18. Отчеты
ReportPanel
• Добавляет клиентский интерфейс для формирования печатных форм отчетов
• Позволяет передавать параметры для формирования отчета
Больше, чем технологии!
19. Готовые модули
1 AdminPanel – панель администратора
Больше, чем технологии!
20. Готовые модули
2
1 AdminPanel – панель администратора
State – работа со статусами
Больше, чем технологии!
21. Готовые модули
3 FileStorage – работа с файловой системой
4 Audit – логирование действий пользователя
5 KLADR – работа с КЛАДР
6 Messenger – сообщения внутри системы и через SMTP
7 UserProfile – пользовательские параметры
Больше, чем технологии!