Class Funcion
java.lang.Object
model.cartelera.Funcion
Clase que representa una funcion de cine, que es la proyeccion de una pelicula
en una sala a una fecha y hora especifica.
Gestiona la disponibilidad de asientos, ocupacion, calculo de hora de finalizacion
y el estado de la funcion.
- Version:
- 1.0
- Author:
- ISC Israel de Jesus Mar Parada
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionFuncion(String idFuncion, LocalDateTime fechaFuncion, LocalTime horaInicio) Constructor para crear una nueva funcion. -
Method Summary
Modifier and TypeMethodDescriptionvoidActualiza la disponibilidad de asientos de la funcion.voidCalcula la hora de finalizacion de la funcion.intintgetSala()booleanbooleanvoidocuparAsientos(int cantidad) Marca una cantidad de asientos como ocupados.voidsetAsientosDisponibles(int asientosDisponibles) voidsetAsientosOcupados(int asientosOcupados) voidsetEsFuncionEstreno(boolean esFuncionEstreno) voidsetEsFuncionPreventa(boolean esFuncionPreventa) voidsetEstadoFuncion(String estadoFuncion) voidsetFechaFuncion(LocalDateTime fechaFuncion) voidsetHoraFin(LocalTime horaFin) voidsetHoraInicio(LocalTime horaInicio) voidsetIdFuncion(String idFuncion) voidsetIdPelicula(String idPelicula) voidvoidsetPelicula(Pelicula pelicula) Establece la pelicula de la funcion.voidsetPorcentajeOcupacion(BigDecimal porcentajeOcupacion) voidsetPrecioBaseFuncion(BigDecimal precioBaseFuncion) voidEstablece la sala de la funcion.voidsetTipoIdiomaFuncion(String tipoIdiomaFuncion) toString()Devuelve una representacion textual de la funcion.booleanValidarDisponibilidad(int cantidad) Valida si hay suficientes asientos disponibles para una reserva.
-
Constructor Details
-
Funcion
Constructor para crear una nueva funcion. Inicializa la funcion con estado DISPONIBLE, asientos disponibles y ocupados en cero.- Parameters:
idFuncion- Identificador unico de la funcionfechaFuncion- Fecha de la funcionhoraInicio- Hora de inicio de la funcion
-
-
Method Details
-
CalcularHoraFin
public void CalcularHoraFin()Calcula la hora de finalizacion de la funcion. Suma la duracion de la pelicula (en minutos) a la hora de inicio. Requiere que la pelicula y la hora de inicio esten definidas. -
ActualizarDisponibilidad
public void ActualizarDisponibilidad()Actualiza la disponibilidad de asientos de la funcion. Recalcula asientos disponibles, ocupados y el porcentaje de ocupacion basado en el estado actual de la sala. -
ValidarDisponibilidad
public boolean ValidarDisponibilidad(int cantidad) Valida si hay suficientes asientos disponibles para una reserva.- Parameters:
cantidad- Numero de asientos que se desea reservar- Returns:
- true si hay suficientes asientos disponibles
-
ocuparAsientos
public void ocuparAsientos(int cantidad) Marca una cantidad de asientos como ocupados. Incrementa asientos ocupados y disminuye asientos disponibles.- Parameters:
cantidad- Numero de asientos a ocupar
-
getIdFuncion
- Returns:
- Identificador unico de la funcion
-
setIdFuncion
- Parameters:
idFuncion- Nuevo identificador de funcion
-
getFechaFuncion
- Returns:
- Fecha de la funcion
-
setFechaFuncion
- Parameters:
fechaFuncion- Nueva fecha de funcion
-
getHoraInicio
- Returns:
- Hora de inicio
-
setHoraInicio
- Parameters:
horaInicio- Nueva hora de inicio
-
getHoraFin
- Returns:
- Hora de finalizacion
-
setHoraFin
- Parameters:
horaFin- Nueva hora de finalizacion
-
getPrecioBaseFuncion
- Returns:
- Precio base de la funcion
-
setPrecioBaseFuncion
- Parameters:
precioBaseFuncion- Nuevo precio base
-
getIdPelicula
- Returns:
- Identificador de la pelicula
-
setIdPelicula
- Parameters:
idPelicula- Nuevo identificador de pelicula
-
getIdSala
- Returns:
- Identificador de la sala
-
setIdSala
- Parameters:
idSala- Nuevo identificador de sala
-
getEstadoFuncion
- Returns:
- Estado de la funcion
-
setEstadoFuncion
- Parameters:
estadoFuncion- Nuevo estado
-
getAsientosDisponibles
public int getAsientosDisponibles()- Returns:
- Asientos disponibles
-
setAsientosDisponibles
public void setAsientosDisponibles(int asientosDisponibles) - Parameters:
asientosDisponibles- Nueva cantidad de asientos disponibles
-
getAsientosOcupados
public int getAsientosOcupados()- Returns:
- Asientos ocupados
-
setAsientosOcupados
public void setAsientosOcupados(int asientosOcupados) - Parameters:
asientosOcupados- Nueva cantidad de asientos ocupados
-
getPorcentajeOcupacion
- Returns:
- Porcentaje de ocupacion
-
setPorcentajeOcupacion
- Parameters:
porcentajeOcupacion- Nuevo porcentaje de ocupacion
-
isEsFuncionEstreno
public boolean isEsFuncionEstreno()- Returns:
- true si es funcion de estreno
-
setEsFuncionEstreno
public void setEsFuncionEstreno(boolean esFuncionEstreno) - Parameters:
esFuncionEstreno- Nuevo estado de estreno
-
isEsFuncionPreventa
public boolean isEsFuncionPreventa()- Returns:
- true si tiene preventa disponible
-
setEsFuncionPreventa
public void setEsFuncionPreventa(boolean esFuncionPreventa) - Parameters:
esFuncionPreventa- Nuevo estado de preventa
-
getTipoIdiomaFuncion
- Returns:
- Tipo de idioma de la funcion
-
setTipoIdiomaFuncion
- Parameters:
tipoIdiomaFuncion- Nuevo tipo de idioma
-
getPelicula
- Returns:
- Referencia a la pelicula
-
setPelicula
Establece la pelicula de la funcion. Actualiza automaticamente el idPelicula y recalcula la hora de fin.- Parameters:
pelicula- Pelicula a asignar
-
getSala
- Returns:
- Referencia a la sala
-
setSala
Establece la sala de la funcion. Actualiza automaticamente el idSala y los asientos disponibles.- Parameters:
sala- Sala a asignar
-
toString
-