Добро пожаловать в репозиторий проекта "RamenLoven"! Этот проект создан для управления рестораном "RamenLoven" с использованием Spring Framework и Java. Здесь вы найдете подробное описание функционала, технологий и возможностей приложения.
"RamenLoven" - это веб-приложение для управления рестораном, предоставляющее различные возможности для администрирования рестораном, управления персоналом и заказами, а также обеспечивающее удобный интерфейс для клиентов для просмотра меню и размещения заказов.
-
CRUD-операции:
- Разработан и интегрован функционал для управления данными приложения, такими как меню ресторана, сотрудники, пользователи, заказы и другие.
-
Аутентификация и авторизация пользователей:
- Реализована система регистрации и входа в систему с обязательной валидацией данных и конфигурацией Spring Security.
-
Реляционная база данных:
- Организовано автоматическое создание нормализованной БД (есть подключение к СУБД MySQL).
-
Разделение ролей и безопасность приложния:
- Внедрено детализированное разделение ролей на администраторов, поваров, доставщиков и пользователей и другие меры безопасности с использованием Spring Security.
-
Корзина и валидация заказов:
- Разработана корзина для пользователей с валидацией наличия товаров и данных для безопасного оформления заказа.
-
Автоматизация статусов заказов:
- Разработана система автоматического изменения статусов заказов в реальном времени. Статус заказа автоматически изменяется в процессе работы поваров и доставщиков над заказом.
-
История и отслеживание заказов:
- Организован механизм отслеживания и хранения истории заказов пользователей.
-
Расширенный поиск данных:
- Внедрены меры для возможности расширенного поиска и фильтрации данных с использованием JPA.
-
Панели управления:
- Созданы панели управления для работников и разработаны соответствующих энд-поинтов.
-
Шаблонизация данных:
- Для динамической генерации HTML-страниц был использован шаблонизатор Freemarker.
-
Пагинация и визуализация данных:
- Реализована пагинация при просмотре данных при помощи Spring Web.
-
MVC-паттерн:
- Архитектура приложения организована в соответствии с паттерном проектирования Model-View-Controller (MVC).
- Корзина пользователя
- Просмотр меню
- Просмотр профиля и истории заказов
- Функционал принятия и готовности заказа
- Функционал принятия и подтверждения доставки заказа
- Возможные страницы панели управления
- Пример управления меню блюд (расширенный поиск, пагинация)
- Создание/Изменение блюда/напитка
- Изменение роли пользователя
- Просмотр подробной информации по заказу
- Изменение статуса заказа (при необходимости)
- Невозможно добавить в заказ большее кол-во продукта, чем есть в БД
- Защита оформления невалидного заказа
- Автоматическая смена статуса заказов в процессе работы сотрудников с заказом
- И другие...
Чтобы установить и запустить проект локально, выполните следующие шаги:
- Клонируйте репозиторий на локальную машину.
- Убедитесь, что у вас установлены Java и MySQL.
- Импортируйте проект в вашу среду разработки.
- Настройте конфигурацию базы данных в файле
application.properties
. - Запустите проект.
- Перейдите по адресу: http://localhost:8080/
Если у вас есть вопросы или предложения, не стесняйтесь связаться по электронной почте: [email protected].
Благодарим вас за использование нашего приложения! 🍜🎉