Skip to content

little-software-engineer/parking-ticketing-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smart Parking System

Moderna demo aplikacija za rezervacije parking mesta sa QR verifikacijom na ulazu. Sastoji se iz Spring Boot backend-a i React (Vite) frontenda, uz uglađen, profesionalan UI i jasno vođene korake plaćanja/verifikacije.

Ključne funkcionalnosti

  • Kreiranje rezervacije parking mesta i generisanje QR koda
  • Plaćanje (simulirano) i promene statusa (PENDING → PAID → CHECKED_IN)
  • Skener na kapiji: čitanje QR koda ili ručna verifikacija unosom ID-a rezervacije
  • Pomoć/Q&A stranica sa uputstvima za korisnike
  • Moderan dark UI, responzivan layout (header, sidebar, kartice)

Tehnologije

  • Backend: Java 17+, Spring Boot, Maven, ZXing (QR), H2 (default)
  • Frontend: React + Vite, React Router, html5-qrcode

Brzi start

1) Backend

cd smart-parking-system
mvn spring-boot:run
# http://localhost:8080

2) Frontend

cd smart-parking-system/frontend
npm install
npm run dev
# http://localhost:5173

Napomena: Frontend poziva backend na portu 8080.

Kako koristiti

  1. Na početnoj izaberite slot → „Rezerviši“
  2. Na stranici rezervacije dobijate QR kod i ID rezervacije
  3. U „Gate“ skeneru dozvolite kameru
    • Skenirajte QR kod, ili
    • Prebacite na „Koristi ID rezervacije“ i unesite ID
  4. Kliknite „Plati sada“ (simulacija) → status prelazi u PAID
  5. Kliknite „Verifikuj & Otvori rampu“ → status prelazi u CHECKED_IN

Detaljnije uputstvo je dostupno na ruti /help.

API (izbor)

  • POST /api/reservations
  • GET /api/reservations/{id}/qrcode
  • POST /api/payments/simulate (plaćanje tokenom)
  • POST /api/payments/simulate-by-id (plaćanje po ID-u)
  • GET /api/ticket/verify?token=... (verifikacija tokenom)
  • POST /api/ticket/verify-by-id (verifikacija po ID-u)
  • GET /api/ticket/status?token=... (status token)
  • POST /api/ticket/status-by-id (status po ID-u)

Struktura (skraćeno)

smart-parking-system/
  ├─ src/main/java/com/example/smartparkingsystem/
  │   ├─ controller/ (ReservationController, PaymentController)
  │   ├─ dto/ (TokenDto, VerifyResponse, TicketStatusResponse, PaymentResponse, ReservationIdDto)
  │   ├─ entity/, repository/, util/
  └─ frontend/
      ├─ src/
      │   ├─ pages/ (GateScanner, ReservationPage, Help)
      │   ├─ App.jsx, main.jsx, index.css
      └─ package.json, vite.config.js

Razvoj

  • Node 18+ i Java 17+ preporučeni
  • Kod fronta je organizovan i lako prilagodljiv temama/bojama
  • ESLint uključen; Vite build

Napomene

  • Plaćanje je simulirano (demo)
  • QR token je potpisan i vremenski ograničen; za produkciju planirati sigurnosne i payment integracije

Licenca

MIT

About

Pametan sistem za rezervacije parking mesta sa QR verifikacijom na ulazu: React + Vite frontend, Spring Boot backend, skener kapije, simulirano plaćanje i ručni unos po ID-u. Moderan dark UI i Q&A stranica.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors