Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FastDelivery

Applicazione desktop JavaFX per la gestione di un servizio di spesa a domicilio. Il progetto è stato realizzato per l'insegnamento di Laboratorio di Programmazione a Oggetti del corso di laurea in Informatica dell'Università degli Studi dell'Aquila, A.A. 2020/2021.

Schermata cliente di FastDelivery

Funzionalità

  • registrazione e accesso degli utenti;
  • catalogo dei prodotti con ricerca e filtri;
  • carrello e creazione degli ordini;
  • gestione di indirizzo e data di consegna;
  • aggiornamento dello stato degli ordini e notifiche;
  • gestione di prodotti, categorie e promozioni da parte dell'operatore;
  • assegnazione degli ordini agli operatori addetti alla preparazione.

L'applicazione prevede tre ruoli: cliente, operatore e addetto alla preparazione degli ordini.

Tecnologie e struttura

  • Java 11
  • JavaFX 17 e FXML
  • Maven
  • MySQL 8 come persistenza opzionale
  • architettura organizzata nei livelli controller, business, domain e view
  • implementazioni della persistenza in memoria, su file e su database

Avvio rapido

Sono necessari JDK 11 o successivo e Maven. Per avviare il progetto dalla cartella principale:

mvn clean javafx:run

Per impostazione predefinita l'applicazione usa dati in memoria e non richiede un database.

Account dimostrativi

Ruolo Utente Password
Operatore op op
Cliente c c
Secondo cliente c1 c1

È possibile creare altri clienti e addetti alla preparazione direttamente dall'applicazione.

Persistenza opzionale

La modalità può essere selezionata con la variabile d'ambiente FASTDELIVERY_STORAGE, usando uno dei valori ram, file o db.

Esempio per usare i file inclusi nel progetto:

FASTDELIVERY_STORAGE=file mvn javafx:run

Per la modalità MySQL sono disponibili gli script nella cartella src/main/resources/db. La connessione si configura senza modificare il codice:

export FASTDELIVERY_STORAGE=db
export FASTDELIVERY_DB_URL='jdbc:mysql://localhost:3306/fastdelivery?serverTimezone=Europe/Rome'
export FASTDELIVERY_DB_USER='root'
export FASTDELIVERY_DB_PASSWORD='password-locale'
mvn javafx:run

Documentazione

Autori

  • Gabriele Di Egidio
  • Luigi Iaconi

Nota

FastDelivery è un progetto universitario a scopo didattico. Gli account e i dati inclusi sono dimostrativi; l'applicazione non è pensata per l'uso in produzione.

About

Applicazione desktop JavaFX per la gestione di un servizio di spesa a domicilio.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages