Skip to content

Tech-Boost-Java/ShoppingSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛒 Завдання: Система управління покупками в магазинах

🎯 Мета

Реалізувати Java-додаток з використанням Hibernate, який моделює просту систему купівлі продуктів у магазинах.

📚 Опис сутностей

🧺 Product (Продукт)

  • id — унікальний ідентифікатор
  • name — назва продукту
  • price — ціна
  • 🔗 Належить до однієї категорії
  • 🔗 Продається у багатьох магазинах

🗂 Category (Категорія)

  • id — унікальний ідентифікатор
  • name — назва категорії
  • 🔗 Має багато продуктів

🏬 Store (Магазин)

  • id — унікальний ідентифікатор
  • name — назва магазину
  • location — місце розташування
  • 🔗 Продає багато продуктів

🧑‍💼 Customer (Покупець)

  • id — унікальний ідентифікатор
  • name — ім’я покупця
  • email — електронна пошта
  • 🔗 Може купувати багато продуктів

🧾 Purchase (Покупка)

  • Додаткова сутність, яка зберігає інформацію про покупку:
    • id
    • customer
    • product
    • purchaseDate

🔗 Зв’язки між сутностями

  • ProductCategory: ManyToOne
  • CategoryProduct: OneToMany
  • ProductStore: ManyToMany
  • CustomerProduct: ManyToMany через Purchase

✅ Функціональні вимоги

  • Додати новий продукт до категорії
  • Додати продукт у магазин
  • Зареєструвати покупку продукту покупцем
  • Отримати список продуктів певної категорії
  • Знайти всі магазини, де доступний конкретний продукт
  • Переглянути всі продукти, які купив певний покупець

🌟 Додаткові (опціональні) умови

  • Зберігати дату купівлі
  • Додати перевірку: чи є продукт у магазині перед покупкою
  • Додати обмеження унікальності (наприклад, email для покупця, name для магазину)
  • Додати фільтрацію та сортування: Список продуктів за ціною (від дешевих до дорогих і навпаки). Список покупок покупця за датою або загальною сумою.

🛠 Технології

  • Java
  • Spring Boot
  • Hibernate (JPA)
  • H2/PostgreSQL (на вибір)
  • Maven

💡 Рекомендовано реалізувати через багаторівневу архітектуру: model, repository, service, controller.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages