Class Reserva
java.lang.Object
model.clientes.Reserva
Clase que representa una reserva de asientos para una funcion de cine.
Gestiona toda la informacion relacionada con la reserva: codigo de confirmacion,
fechas, asientos reservados, calculo de totales, descuentos, estado de la reserva,
metodo de pago y generacion de QR.
- Version:
- 1.0
- Author:
- ISC Israel de Jesus Mar Parada
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCalcula el total de la reserva.voidCancela la reserva.voidconfirmarPago(String metodo) Confirma el pago de la reserva.voidSimula el envio de confirmacion de reserva por correo electronico.voidGenera un codigo QR simulado para la reserva.intvoidsetAsientos(List<Asiento> asientos) Establece la lista de asientos reservados.voidsetCantidadAsientos(int cantidadAsientos) voidsetCliente(Cliente cliente) voidsetCodigoConfirmacion(String codigoConfirmacion) voidsetDescuentoAplicado(BigDecimal descuentoAplicado) voidsetEmailConfirmacion(String emailConfirmacion) voidsetEstadoReserva(String estadoReserva) voidsetFechaLimitePago(LocalDateTime fechaLimitePago) voidsetFechaPago(LocalDateTime fechaPago) voidsetFechaReserva(LocalDateTime fechaReserva) voidsetFuncion(Funcion funcion) Establece la funcion de la reserva.voidsetIdFuncion(String idFuncion) voidsetIdReserva(String idReserva) voidsetListaAsientosReservados(List<String> listaAsientosReservados) Establece la lista de asientos reservados.voidsetMetodoPago(String metodoPago) voidsetQrReserva(String qrReserva) voidsetSubtotalReserva(BigDecimal subtotalReserva) voidsetTelefonoContacto(String telefonoContacto) voidsetTipoCliente(String tipoCliente) voidsetTotalReserva(BigDecimal totalReserva) voidsetUsuarioRegistro(String usuarioRegistro) toString()Devuelve una representacion textual de la reserva.
-
Constructor Details
-
Reserva
Constructor para crear una nueva reserva. Inicializa la reserva con fecha actual, fecha limite de pago en 15 minutos, estado PENDIENTE y genera un codigo de confirmacion unico.- Parameters:
idReserva- Identificador unico de la reservaidFuncion- Identificador de la funcion reservada
-
-
Method Details
-
CalcularTotal
public void CalcularTotal()Calcula el total de la reserva. Suma el precio final de cada asiento, aplica ajuste por funcion de estreno (+20%) y resta el descuento aplicado. -
GenerarQR
public void GenerarQR()Genera un codigo QR simulado para la reserva. Formato: "QR-" + idReserva + "-" + codigoConfirmacion -
EnviarConfirmacion
public void EnviarConfirmacion()Simula el envio de confirmacion de reserva por correo electronico. Muestra en consola la informacion de confirmacion. -
CancelarReserva
public void CancelarReserva()Cancela la reserva. Cambia el estado a CANCELADA y libera todos los asientos reservados. -
confirmarPago
Confirma el pago de la reserva. Registra el metodo de pago, fecha de pago, cambia estado a CONFIRMADA, genera el QR y envia la confirmacion.- Parameters:
metodo- Metodo de pago utilizado (Tarjeta, Efectivo, etc.)
-
getIdReserva
- Returns:
- Identificador unico de la reserva
-
setIdReserva
- Parameters:
idReserva- Nuevo identificador de reserva
-
getCodigoConfirmacion
- Returns:
- Codigo de confirmacion
-
setCodigoConfirmacion
- Parameters:
codigoConfirmacion- Nuevo codigo de confirmacion
-
getFechaReserva
- Returns:
- Fecha de la reserva
-
setFechaReserva
- Parameters:
fechaReserva- Nueva fecha de reserva
-
getFechaLimitePago
- Returns:
- Fecha limite de pago
-
setFechaLimitePago
- Parameters:
fechaLimitePago- Nueva fecha limite de pago
-
getIdFuncion
- Returns:
- Identificador de la funcion
-
setIdFuncion
- Parameters:
idFuncion- Nuevo identificador de funcion
-
getListaAsientosReservados
-
setListaAsientosReservados
-
getCantidadAsientos
public int getCantidadAsientos()- Returns:
- Cantidad de asientos reservados
-
setCantidadAsientos
public void setCantidadAsientos(int cantidadAsientos) - Parameters:
cantidadAsientos- Nueva cantidad de asientos
-
getTipoCliente
- Returns:
- Tipo de cliente
-
setTipoCliente
- Parameters:
tipoCliente- Nuevo tipo de cliente
-
getSubtotalReserva
- Returns:
- Subtotal de la reserva
-
setSubtotalReserva
- Parameters:
subtotalReserva- Nuevo subtotal
-
getDescuentoAplicado
- Returns:
- Descuento aplicado
-
setDescuentoAplicado
- Parameters:
descuentoAplicado- Nuevo descuento
-
getTotalReserva
- Returns:
- Total de la reserva
-
setTotalReserva
- Parameters:
totalReserva- Nuevo total
-
getEstadoReserva
- Returns:
- Estado de la reserva (PENDIENTE, CONFIRMADA, CANCELADA)
-
setEstadoReserva
- Parameters:
estadoReserva- Nuevo estado
-
getMetodoPago
- Returns:
- Metodo de pago
-
setMetodoPago
- Parameters:
metodoPago- Nuevo metodo de pago
-
getFechaPago
- Returns:
- Fecha de pago
-
setFechaPago
- Parameters:
fechaPago- Nueva fecha de pago
-
getEmailConfirmacion
- Returns:
- Correo de confirmacion
-
setEmailConfirmacion
- Parameters:
emailConfirmacion- Nuevo correo de confirmacion
-
getTelefonoContacto
- Returns:
- Telefono de contacto
-
setTelefonoContacto
- Parameters:
telefonoContacto- Nuevo telefono de contacto
-
getQrReserva
- Returns:
- Codigo QR de la reserva
-
setQrReserva
- Parameters:
qrReserva- Nuevo codigo QR
-
getUsuarioRegistro
- Returns:
- Usuario que registro la reserva
-
setUsuarioRegistro
- Parameters:
usuarioRegistro- Nuevo usuario de registro
-
getFuncion
- Returns:
- Referencia a la funcion
-
setFuncion
Establece la funcion de la reserva. Actualiza automaticamente el idFuncion.- Parameters:
funcion- Funcion a asignar
-
getCliente
- Returns:
- Referencia al cliente
-
setCliente
- Parameters:
cliente- Cliente a asignar
-
getAsientos
-
setAsientos
-
toString
-