22
+ Альберт Габидуллин Докладчик: Решения для электронного правительства и электронизация государственных услуг Больше, чем технологии! Платформа B4: многообразие готовых модулей для разработки

Модули платформы B4

Embed Size (px)

DESCRIPTION

Габидуллин А. Модули платформы B4

Citation preview

Page 1: Модули платформы B4

+

АльбертГабидуллин

Докладчик:Решения для электронного правительства и электронизация государственных услуг

Больше, чем технологии!

Платформа B4: многообразие готовых модулей для разработки

Page 2: Модули платформы B4

Архитектура

Уменьшение количества потенциальных ошибок

Возможность быстрого расширения функциональных возможностей решения

Больше, чем технологии!

Ядро

Security

ReportPanel

Прикладное решение

ECM7

Page 3: Модули платформы B4

Добавление и обновление

Больше, чем технологии!

Сборку соответствующего модуля –> каталог /modules

Рестарт приложения (веб-сервер/интерфейс)

Сборка из каталога /modules –> каталог /.modules

Page 4: Модули платформы B4

Миграция БД

Модуль «ECM7»

Миграция базы данных – процесс внесения изменений в БД в ходе разработки (структура)

Больше, чем технологии!

Page 5: Модули платформы B4

Миграция БД. Для чего?

Больше, чем технологии!

Исключение возможности появления ошибок

Возможность отката структуры БД на более раннюю версию

Независимость от используемой СУБД

Автоматизация процесса развертывания БД на любом сервере

Page 6: Модули платформы B4

При разработке последовательно создаются классы с описанием

необходимых изменений и указанием номера версий.

Клиентский интерфейс для проведения

миграций.

Миграция БД. Как?

Больше, чем технологии!

Таблица в БД, хранящая актуальную информацию об актуальной версии миграции

по каждому модулю.

Используемый фреймворк ECM7 предоставляет API для

выполнения миграций.

Клиентский интерфейс для проведения

миграций.

SchemaInfo Up & Down

API Интерфейс

Page 7: Модули платформы B4

Миграция БД. Интерфейс.

Больше, чем технологии!

Page 8: Модули платформы B4

Безопасность и права доступа

Модуль «Security»

Аутентификация. Авторизация. Роли. Разграничение прав пользователей.

Больше, чем технологии!

Page 9: Модули платформы B4

Безопасность и права доступа

Больше, чем технологии!

Василий

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

справочников

Управление ролями

Руководитель отдела

Редактирование состава отделаАнатолий

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

Page 10: Модули платформы B4

Безопасность и права доступа

Больше, чем технологии!

• Пользователи• Создание/Редактирование

пользователей. • Платформа предоставляет

интерфейс для добавления логики работы с пользователями

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

Page 11: Модули платформы B4

Безопасность и права доступа

Больше, чем технологии!

• Роли• Простой справочник• Добавление/Редактирование/

Удаление ролей через интерфейс (inline-грид)

Page 12: Модули платформы B4

Безопасность и права доступа

Больше, чем технологии!

• Права доступа• Класс-наследник PermissionMap, в

конструкторе которого перечисляются права

Namespace("ERegion.Dictionary", "Справочники");Permission("ERegion.Dictionary.Edit", "Редактирование");CRUDandViewPermission("ERegion.Dictionary")

Page 13: Модули платформы B4

Безопасность и права доступа

Больше, чем технологии!

Привязка прав к роли

Page 14: Модули платформы B4

Безопасность и права доступа

Больше, чем технологии!

Проверка ограничений

На сервере

• Основной метод проверки прав – Grant. Передаем текущего пользователя и название ограничения

• Формирование меню в зависимости от наличия тех или иных прав

• Атрибуты для класса контроллера

На клиенте

• Возможность применять ограничения к отдельному клиентскому компоненту

• Плагины для применения ограничений:• Плагин для применения ограничений к гриду• Плагин для применения ограничений к конкретный полям формы• ……

• Вспомогательные функции для применения ограничений

• Вспомогательные функции для выбора компонентов, к которым необходимо применить ограничение

Page 15: Модули платформы B4

Отчеты

«Reports» и модуль «ReportPanel»

Вывод печатных форм отчетов в формате Word и Excel

Больше, чем технологии!

Page 16: Модули платформы B4

Отчеты

Больше, чем технологии!

Reports

Является компонентом ядра1

Предоставляет интерфейсы для генерации отчетов

Работает на основе шаблонов 3

2

Page 17: Модули платформы B4

Отчеты. Reports. How To.

Больше, чем технологии!

Добавление шаблона в ресурсы

Добавление класса-наследника BaseReport

Добавление метода контроллера, отвечающего за формирование и отдачу отчета на клиент

Добавление кнопки в клиентском интерфейсе для обращения к соответствующему методу контроллера

Page 18: Модули платформы B4

Отчеты

Больше, чем технологии!

ReportPanel

• Добавляет клиентский интерфейс для формирования печатных форм отчетов • Позволяет передавать параметры для формирования отчета

Page 19: Модули платформы B4

Готовые модули

AdminPanel – панель администратора1

Больше, чем технологии!

Page 20: Модули платформы B4

Готовые модули

AdminPanel – панель администратора1

Больше, чем технологии!

State – работа со статусами2

Page 21: Модули платформы B4

Готовые модули

FileStorage – работа с файловой системой3

Messenger – сообщения внутри системы и через SMTP

UserProfile – пользовательские параметры

6

Audit – логирование действий пользователя

7

KLADR – работа с КЛАДР 5

4

Больше, чем технологии!

Page 22: Модули платформы B4

+Спасибо за внимание!