Web API сервис на .NET, реализующий API методы CRUD над сущностью Users, доступ к API осуществляться через интерфейс Swagger. База данных PostgreSQL. Добавлен Docker.
CRUD методы:
- Создание пользователя по логину, паролю, имени, полу и дате рождения + указание будет ли пользователь админом (Доступно Админам)
- Изменение имени, пола или даты рождения пользователя (Может менять Администратор, либо лично пользователь, если он активен (отсутствует RevokedOn))
- Изменение пароля (Пароль может менять либо Администратор, либо лично пользователь, если он активен (отсутствует RevokedOn))
- Изменение логина (Логин может менять либо Администратор, либо лично пользователь, если он активен (отсутствует RevokedOn), логин должен оставаться уникальным)
- Запрос списка всех активных (отсутствует RevokedOn) пользователей, список отсортирован по CreatedOn (Доступно Админам)
- Запрос пользователя по логину, в списке долны быть имя, пол и дата рождения статус активный или нет (Доступно Админам)
- Запрос пользователя по логину и паролю (Доступно только самому пользователю, если он активен (отсутствует RevokedOn))
- Запрос всех пользователей старше определённого возраста (Доступно Админам)
- Удаление пользователя по логину полное или мягкое (При мягком удалении должна происходить простановка RevokedOn и RevokedBy) (Доступно Админам)
- Восстановление пользователя - Очистка полей (RevokedOn, RevokedBy) (Доступно Админам)