Warehouse представляет собой приложение по управлению за движением товаров на складе.
- JDK 11
- Spring Boot
- Apache Maven 3.6.3
- PostgreSQL 13
- Docker 20.10.7
- Swagger 3.17.1
- Lombok
- Liquibase
- Hibernate
- Querydsl
- SLF4J
- Задать настройки подключения в файлах
src/main/resoures/application.properties
иdocker-compose.yaml
- Запустить контейнер с БД посредством выполнения команды
docker-compose up
- Запустить проект
-
Аутентификация и авторизация с использованием JWT и хешированием паролей при помощи bcrypt.
Система разрешений:
- для чтения
- для заказа
- для закупки
- для списания
- для подтверждения списания
- для административных функций
Система ролей:
- Пользователь по умолчанию (чтение)
- Продавец (чтение, заказ)
- Кладовщик (чтение, закупка, списание)
- Супервайзер (чтение, заказ, закупка, списание)
- Администратор (все разрешения)
-
Управление складом (CRUD-операции)
-
Продажа товаров
-
Закупка товаров
-
Проведение списаний в два этапа:
- создание списка
- списание всего имеющегося товара
- списание части товара
- согласование списка
- создание списка
-
Фильтрация и пагинация
Задаваемые параметры:
- необязательные поля сущности
- номер страницы
- количество записей на одной странице
- поле для сортировки
- вид сортировки