Хранение в Mongo
| Field name |
Field type |
Validates |
Description |
| name |
string |
max-length: 50; unique: true; required: true |
Название организации |
| owner |
ObjectId |
required: true |
Ссылка на модель User. Создатель организации |
Пока не решен вопрос с хранением членов организации. Отношение многое ко многим
Основные требования
- Поведение пользователей asutp.io (далее Пользователи):
- Пользователи могут создавать любое количество организаци
- Пользователи могут просмотреть все организации созданные ими, либо членами которых они являются
- Поведение создателя организации (далее "Создатель")
- Создатель может приглашать других пользователей asutp.io в организацию
- Создатель может редактировать данные организации, кроме поля owner
- Создатель может удалить организацию. После удаления, все члены организации будут отсоединены от нее. Возможно будут уведомления на почту
- Создатель может удалять членов организации, пользователи не удаляются из системы.
- Создатель может назначить члену организации роль администратора
- Смена контекста:
- При наличии у пользователей организаций (созданных пользователем либо членом которых он является), они могут менять контекст данных с которыми он работает.
- Контекстом являются организации, либо контекст самого пользователя (личный контекст).
- При смене контекста, все данные возвращаются в рамках доступности этого контекста
- Если контекст - организация, данные будут фильтроваться по этой организации
- Если контекст - личный, данные отфильтровываются по принадлежности к этому пользователю, т. е. созданные пользователем и не привязанные ни к одной из организаций
- Разграничение данных по типам пользователей (администратор, сотрудник организации) будут проработаны в задаче с правами на доступ в организацию. Поведение в текущей реализации, пользователи организации всегда видят все данные организации
Интерфейс пользователя
Просмотр списка организаций
- Список организаций, доступных пользователю, можно просмотреть в профиле пользователя. Список организаций находится под полями профиля. Отображение ввиде таблицы:
| Название организации |
Владелец |
Отношение текущего пользователя с организацией |
| Asutp |
Сергей Янович |
одно из {Владелец OR Администратор OR Сотрудник } |
- По клику на строку с организацией он переходит на страницу редактирования (если текущий пользователь == владелец организации) либо просмотра (текущий пользователь == { Администратор | Сотрудник }) данных организации.
- Пользователь может выбрать одну или несколько организаций в списке, путем клика на чекбокс возле названия организации и совершить с ними групповое действие:
Редактирование организации
- Страница редактирования является самостоятельной, открывается не под профилем пользователя
- На странице редактирования есть input для "Названия" и input(readonly=true) для Владельца
- Редактировать можно только Название Организации
- При успешном применении редактирования, кнопка "Изменить" становится не активной. Поведение как на всех формах проекта
Создание организации
- Кнопка создания организации находится над списком организаци в профиле пользователя
- Кнопка всегда активна
- При нажатии на кнопку мы переходим на форму создания организации
- Форма создания организации содержит два поля
- input для "Названия" организации
- input(readonly = true) для владельца организации. Создателем организации автоматически становится текущий пользователь
- При успешном создании организации мы переходим на страницу редактирования организации.
Смена контекста организации
- Смена контекста происходит путем выбора элемента в выпадающем списке.
- Выпадающий список находится под банером asutp.io и над левым sidebar.
- Текущий элемент, отображаемый в выпадающем списке, обозначает текущий контекст.
- Список состоит из:
- Первый элемент всегда личный контекст
- Организация 1
- Организация 2
- ............
- Организация N
- Управление организациями
- Создание организации
- По клику на "Управление организациями", пользователь переходит на профиль, и страница позиционируется на списке организаций, текущий контекст не меняется
- По клику на "Создание организации", пользователь переходит на форму создания организации, текущий контекст не меняется
Хранение в Mongo
Пока не решен вопрос с хранением членов организации. Отношение многое ко многим
Основные требования
Интерфейс пользователя
Просмотр списка организаций
Редактирование организации
Создание организации
Смена контекста организации