Иди на текст

Menu servis

ordify-menu-service — Quarkus servis za upravljanje menijem: proizvodi, kategorije, sastojci, dodaci, cene i statusi dostupnosti.

  • Port: 5006
  • Status: ✅ Aktivan
  • Repo: Marinkovic-Co/ordify-menu-service

Funkcionalnosti

  • CRUD proizvoda sa mekim brisanjem (isArchived)
  • Dostupnost artikala za kupce (isAvailable)
  • Batch API za povlačenje proizvoda po ID-jevima (koristi ga order-service)
  • Kategorije kao tekst (plan: zaseban entitet)

Model: Product

Polje Tip Napomena
id Long Panache auto
name String Obavezan (validacija 422)
description String
price BigDecimal Cena
isAvailable boolean Vidljivo kupcima
isArchived boolean Soft delete
category String Za sada tekst; plan: zaseban entitet

API

Metod Putanja Opis
GET /api/products Svi ne-arhivirani proizvodi
GET /api/products/active Samo dostupni kupcima
POST /api/products/batch Proizvodi po listi ID-jeva (za order-service)
POST /api/products Kreiranje (validacija imena)
PUT /api/products/{id} Izmena (404 za arhivirane)
DELETE /api/products/{id} Meko brisanje → isArchived=true

Ključne odluke

  • Soft delete: brisanje samo postavlja isArchived; istorija porudžbina ostaje netaknuta.
  • Batch endpoint: omogućava order-service-u da povuče N proizvoda u jednom pozivu.
  • Testovi: 15 integracionih testova sa REST Assured (redosled kroz @Order).

Pokretanje

./mvnw compile quarkus:dev

Baza se kreira automatski (drop-and-create, samo za DEV).

Testovi

./mvnw test