Организация уровней доступа
Для реализации авторизации и уровней доступа использовался плагин Spring Security.
Чтобы на страницу мог зайти только пользователь с ролью администратора, достаточно в контроллере добавить аннотацию Secured. Так как в системе предусмотрено две роли (администратор и студент), то были использованы следующие аннотации:
1. @Secured(['IS_AUTHENTICATED_FULLY']) - запрещает неавторизованным пользователям зайти на страницу.
2. @Secured(['ROLE_COMMON']) - позволяет посетить страницу только пользователям c ролью студента.
3. @Secured(['ROLE_ROYALTY']) - позволяет зайти на страницу только пользователям с ролью администратора.
Реализация панели администратора
Администратор имеет некоторые дополнительные возможности, которые не доступны пользователям с ролью студент.
Рис. 5 Блок-схема алгоритма распределения студентов по комнатам общежития
Для реализации панели администратора был создан сервис AdminService, который позволяет получить список всех распределенных студентов, список пользователей, не прошедших анкетирование, удалить или изменить информацию о пользователе.
Заключение
Таким образом, в процессе работы была спроектирована модель данных и реализованы серверная и клиентская части информационной системы. Также был проведен опрос студентов, проживающих в общежитиях.
В результате была разработана информационная система распределения студентов по комнатам общежития на основе диагностики межличностных отношений.
Дальнейшая работа может осуществляться в направлении улучшения алгоритма подбора соседей, а также поиска более удачного варианта тестирования для распределения студентов.
Библиографический список
1. Методика диагностики межличностных отношений Т. Лири [Электронный ресурс]. 2016. URL: http://bodysays.ru/tests-on-the-interpersonal-relationships-in-a-team/methods-of-diagnosis-of-interpersonal-relations-t-liri.html (13.07.2016).
2. Собчик Л.Н. Психология индивидуальности. Теория и практика психодиагностики. СПб.: Издательство «Речь», 2005. 624 с.
3. Глен С. Grails. Гибкость Groovy и надежность Java. СПб.: Издательский центр «Символ-Плюс», 2010. 656 с.