Skip to content

About

Object-oriented car dealership management simulation in Java modeling employee roles and vehicle workflows (1st DAW Academic Project, STUCOM).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

🚗 Gestión de un Concesionario de Coches

Java OOP STUCOM

🎓 Proyecto Académico: Desarrollado para la Prueba Evaluativa RA7 del módulo de Programación Orientada a Objetos (MP0485) en el centro STUCOM Pelai (Barcelona), 1º de Desarrollo de Aplicaciones Web (DAW).


Descripción del Proyecto

Aplicación de consola en Java que simula el funcionamiento interno de un concesionario de vehículos. El proyecto modela de manera integral la jerarquía laboral de los empleados, el cálculo automatizado de nóminas según pluses y comisiones, y la asignación polimórfica de tareas a través de interfaces y clases abstractas.


📁 Estructura del Proyecto

ConcesionarioCoches/
├── Controller/
│   └── Main.java              # Punto de entrada interactivo y menú por consola
└── Model/
    ├── Trabajo.java           # Interfaz para contratos laborales
    ├── Empleado.java          # Clase abstracta base de empleados
    ├── Vendedor.java          # Empleado comercial con comisión por ventas
    ├── Mecanico.java          # Empleado de taller con cobro de horas extra
    ├── Gerente.java           # Empleado de dirección con bonus por supervisión
    └── Concesionario.java     # Gestión global del equipo y nóminas

🧱 Jerarquía y Diagrama de Clases

classDiagram
    class Trabajo {
        <<interface>>
        +trabajar() void
        +calcularSueldo() double
    }

    class Empleado {
        <<abstract>>
        #String nombre
        #double sueldoBase
        #int horasTrabajo
        +getNombre() String
        +getSueldoBase() double
        +calcularSueldo()* double
    }

    Trabajo <|.. Empleado : implements
    Empleado <|-- Vendedor : extends
    Empleado <|-- Mecanico : extends
    Empleado <|-- Gerente : extends

    class Vendedor {
        -int ventasRealizadas
        -double comisionPorVenta
        +trabajar() void
        +calcularSueldo() double
    }

    class Mecanico {
        -int horasExtra
        -double pagoHoraExtra
        +trabajar() void
        +calcularSueldo() double
    }

    class Gerente {
        -double bonus
        +trabajar() void
        +calcularSueldo() double
    }
Loading

👥 Tipos de Empleados y Fórmulas Salariales

🚗 Vendedor

  • Sueldo base: 1200 €
  • Atributos: ventasRealizadas y comisionPorVenta (50 € por venta).
  • Cálculo de nómina: sueldoBase + (ventasRealizadas * comisionPorVenta)
  • Acción: Atiende clientes y gestiona el catálogo de vehículos.

🔧 Mecánico

  • Sueldo base: 1200 €
  • Atributos: horasExtra y pagoHoraExtra (15 €/hora).
  • Cálculo de nómina: sueldoBase + (horasExtra * pagoHoraExtra)
  • Acción: Revisa mecánicas, mantenimiento y reparación de coches.

👔 Gerente

  • Sueldo base: 2000 €
  • Atributos: bonus (500 €).
  • Cálculo de nómina: sueldoBase + bonus
  • Acción: Supervisión directiva y coordinación del equipo.

🚀 Ejecución

Al arrancar la aplicación en la consola o NetBeans IDE:

  1. Se solicita el nombre del concesionario.
  2. Se solicita dar de alta a los empleados indicando el tipo (1: Vendedor, 2: Mecánico, 3: Gerente) y su nombre.
  3. Es posible registrar tantos empleados como se desee.
  4. Tras finalizar el alta, se ejecuta la jornada laboral de todo el equipo de forma polimórfica y se genera el resumen de nóminas.

Ejemplo de Salida por Consola

Introduce el nombre del concesionario: Concesionario AutoPlus

Creación de empleados...
Empleado 1: Tipo (1. Vendedor, 2. Mecánico, 3. Gerente)
Nombre: Juan Pérez
Vendedor creado correctamente.

¡A trabajar!
🚗 Vendedor Juan Pérez → El vendedor está atendiendo a clientes y mostrando los coches.
🔧 Mecánico Pedro → El mecánico está revisando y reparando los coches.
👔 Gerente Laura → El gerente está supervisando el concesionario y coordinando al equipo.

💰 Resumen de sueldos:
Vendedores: 1550.00 €
Mecánicos: 1350.00 €
Gerentes: 2500.00 €
Total de sueldos: 5400.00 €

🛠️ Tecnologías

  • Lenguaje: Java 17+
  • Paradigma: Programación Orientada a Objetos (Herencia, Polimorfismo, Interfaces, Abstracción)
  • Entorno: NetBeans IDE / Apache Maven

👤 Autor

Ignacio Breñas Muñoz — 1º DAW, STUCOM Pelai

About

Object-oriented car dealership management simulation in Java modeling employee roles and vehicle workflows (1st DAW Academic Project, STUCOM).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages