Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parking CRM - E2

Gestió de pàrquing amb control d’entrada/sortida, tiquets i pagament

Diagrama de classes

Diagrama de classes orientatiu del sistema

Descripció del projecte

Simulador de sistema de gestió de pàrquing (Parking CRM) que permet:

  • Registrar l’entrada d’un cotxe al pàrquing → generar tiquet
  • Associar el tiquet al cotxe
  • Registrar la sortida del cotxe → calcular estada i import a pagar
  • Gestionar persones (propietaris/ocupants del vehicle)
  • Emmagatzemar històric de tiquets al parquímetre

Objectiu principal de l’exercici: aplicar correctament encapsulació, associacions entre classes, gestió de dates/hores (Instant + Duration) i bon disseny orientat a objectes.

Classes principals

Classe Responsabilitat principal Atributs destacats
Parquimetre Control d’entrada i sortida, generació de tiquets, registre històric, càlcul de pagament ArrayList<Tiquet> registreTiquets
Cotxe Vehicle amb matrícula, propietari i ocupants (màx. 4 persones) String matricula, Persona propietari, List<Persona> ocupants, Tiquet tiquetActiu
Tiquet Registre d’entrada (data/hora + matrícula) – s’utilitza per calcular import a la sortida Instant horaEntrada, String matriculaCotxe
Persona Representa persones (propietari o ocupants del cotxe) String nom, String dni (o similar)
Parking (Opcional) Representa l’espai físic del pàrquing si es vol gestionar places ocupades

Requisits implementats / a implementar

  • Encapsulació completa (atributs private + getters/setters quan calgui)
  • Constructors adequats (sobrecàrrega quan sigui necessari)
  • Mètode toString() ben format a totes les classes
  • Classe Parquimetre amb mètode(s) per:
    • Entrar cotxe → generar i retornar Tiquet
    • Pagar/sortir → calcular import i alliberar tiquet
  • Càlcul correcte del preu segons temps transcorregut
  • Màxim 4 ocupants per cotxe (control d’inserció)
  • Històric de tiquets al parquímetre
  • Classe principal amb main() que faci proves representatives

Càlcul del preu (recordatori)

// Exemple base proporcionat
double preuPerHora = 2.50;           // €/hora (valor recomanat més realista)
Instant entrada = Instant.now();
Instant sortida = entrada.plusSeconds(4500);   // +1h 15min
long segons = Duration.between(entrada, sortida).getSeconds();
long hores = (segons + 3599) / 3600;           // arrodonir cap amunt
double importTotal = hores * preuPerHora;

About

E2 Lliurament. (Pàrking, Cotxe, Persona, Parkimetre i Ticket)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages