Веб-приложение для учета сотрудников какой-либо компании. Реализован посредством шаблона MVC.
- Стек проекта
- Функциональность проекта
- Описание сервисов
- База данных
- Docker
- UnitTests
- Запуск проекта
- P.S.
-
Сервис Account
- Аутентификация и авторизация
-
Сервис Employee
- Добавление пользователя
- Получение списка пользователей (с учетом сортировки и фильтрации)
- Удаление пользователя
- Получение id пользователя
Каждый сервис имеет свои представления по методам. Данные попадают в БД через Automapper. Имеется общий шаблон веб-страницы. Скрипты и стили подключаются отдельно. Сделана фильтрация сортировка и пагинация данных о сотрудниках.
База данных использует Postgres. Контроллеры и сервисы логируют информацию по валидным/не валидным операциям.
https://localhost:7129/Account/Register или https://localhost:7129/Account/Login
Сервис осуществляет контроль пользователей в системе. Процесс происходит с помощью подключения библиотеки с пакетом Identity.EntityFrameworkCore.
- Регистрация С помощью userManager библиотеки Identity выполняется регистрация пользователя и помещения его в базу данных.
- Аутентификация и авторизация
С помощью signInManager библиотеки Identity проверяются входные данные (логин и пароль) и выполняется вход пользователя в систему. - Выход С помощью signInManager библиотеки Identity выполняется выход из системы.
Сервис выполняет администрирование сотрудников.
- Получить список сотрудников
Метод возвращает всех сотрудников. В полях можно укзаать сортировку по столбцам или поиск определенной информации по сотрудникам. - Добавить сотрудника Метод добавляет сотрудника в БД.
- Редактировать сотрудника Метод редактирует информацию о сотруднике.
- Удалить сотрудника Метод удаляет сотрудника из базы данных. Выполнено с модальным окном для подтверждения удаления.
В проекте используются 2 базы данных.
- Для Сервиса Account
- Для Сервиса Employee
Для входа в adminer введите следующие данные:
- Движок - PostgreSQL
- Сервер - db
- Имя пользователя - postgres
- Пароль - example
- База данных - employeeStaff
Подход проектирования БД: Code first
Тип хранения данных: PostgreSQL & Docker
ORM: Entity Framework Core
Для запуска подготовлен docker-compose файл в корне решения. dockerfile располагается в проекте.
Проект EmployeeTests содержит Unit-тесты на функционал сервисов и контроллеров Account и Employee.
Можно запуститься через программу docker. Для запуска в терминале необходимо прописать следующие команды:
- git clone <адрес репозитория на Github>
- docker-compose up
После этого перейдите по указанным адресам.
Это мой второй проект, так что прошу привнести максимально объективную критику.