Проект представляет собой REST API для онлайн-аптеки. Реализация web-приложения для работы с API.
В рамках онлайн-аптеки выделяются 4 категории пользователей:
- неавторизованные пользователи
- авторизованные пользователи
- врачи
- фармацевты(администраторы онлайн-аптеки)
В рамках онлайн-аптеки выделяются 3 категории препаратов:
- общие(доступны для заказа всеми категориями пользователей)
- рецептурные
- специальные(доступны только врачам определённой специальности)
Карточка препарата содержит в себе изображение, наименование товара, стоимость, производитель, способ применения, тип. Введены следующие ограничения на формат этих полей:
- наименование, изготовитель: длина не более 100 символов латиницы/кириллицы/цифр/+тире/+процент
- стоимость: положительное число
- способ применения: не более 500 символов
- размер изображений не превышает 5 Мб
За каждым зарегистрированным пользователем закреплена корзина, с помощью которой реализовано создание заказов
Получение заказов реализуется в аптеках самовывоза. Для каждой аптеки указывается название, адрес, контактный номер телефона, часы работы. Также ведется учет о наличии препаратов в аптеках.
При создании заказа происходит удаление соответствующих позиций из корзины пользователя и изменение данных о наличии препарата в аптеке.
Для запуска необходимо ввести следующие данные в resources/application.properties
Переменная | Описание |
---|---|
spring.datasource.username | Имя пользователя в PostgreSQL |
spring.datasource.password | Пароль пользователя PostgreSQL |
bucketUrl | Ссылка на bucket в Backblazeb2 |
userAgent | Имя пользователя в Backblazeb2 |
appKey | applicationKey в Backblazeb2 |
appKeyId | keyID в Backblazeb2 |
bucketId | Bucket ID в Backblazeb2 |