public VentanaRegistrarIngreso(Estadia estadia, Sesion sesion) { InitializeComponent(); this.estadia = estadia; this.sesion = sesion; this.cantidadHuespedes = estadia.reserva.CantidadHuespedes - 1; }
private void btnCheckOut_Click(object sender, EventArgs e) { if (ventanaCamposEstanCompletos(this, controladorError)) { Estadia estadia = new Estadia(); estadia.reserva = Database.reservaObtener(tbxNumeroReserva.Text, sesion.hotel.id); if (estadia.reserva != null) { if (Database.estadiaEgresoValidar(estadia)) { new VentanaRegistrarEgreso(estadia, sesion.usuario).ShowDialog(); } } else { ventanaInformarError("El codigo de la reserva es invalido"); } } }
private void buscarBtn_Click(object sender, EventArgs e) { reservaSeleccionada = reservaCtrl.getReservaConID(Convert.ToInt32(codReservaBox.Text)); //verifico si para la reserva ya se realizó un checkIn, de ser asi, existe una estadia if (reservaCtrl.esReservaAptaParaCheckOut(reservaSeleccionada)) { panel1.Enabled = false; panel2.Enabled = true; cerrarEstadiaBtn.Enabled = true; estadiaRelacionada = estadiaCtrl.getEstadia_IDReserva(reservaSeleccionada.id_reserva); cargarInfoReserva(); estadiaRelacionada.id_reserva = reservaSeleccionada.id_reserva; fechaInicioEstBox.Value = estadiaRelacionada.fecha_inicio; fechaInicioEstBox.Enabled = false; buscarBtn.Enabled = false; } else { MessageBox.Show("La reserva ingresada no es apta para CheckOUT.\nSu estado actual es: " + reservaCtrl.getEstadoReserva(reservaSeleccionada.id_estado_reserva)); } }
private void regCheckInBtn_Click(object sender, EventArgs e) { try{ if (reservaSeleccionada.fecha_desde > fechaInicioEstBox.Value) { throw new System.ArgumentException("La fecha de ingreso de estadía debe ser la misma a la fecha de inicio de la reserva"); } if (huespedes.Count == 0) { throw new System.ArgumentException("Debe ingresar al menos una habitación"); } Estadia nuevaEstadia = new Estadia(); nuevaEstadia.fecha_inicio = fechaInicioEstBox.Value; nuevaEstadia.id_usuario_checkIn = DatosSesion.id_usuario; nuevaEstadia.id_reserva = reservaSeleccionada.id_reserva; nuevaEstadia.huespedes = huespedes; estadiaCtrl.generarEstadia(nuevaEstadia); MessageBox.Show("Se generó correctamente el check IN"); } catch (Exception exc) { MessageBox.Show(exc.Message); } }
private void button4_Click(object sender, EventArgs e) { //CHECK OUT int codReserva = 0; int idEstadia = 0; //si se va antes de la fecha de salida tengo que poner bien los dias porque dsp en la factura se hace algo con esto DateTime date = Utils.getSystemDatetimeNow(); RepositorioEstadia repoEstadia = new RepositorioEstadia(); RepositorioReserva repoReserva = new RepositorioReserva(); if (textBox1.Text != "") { codReserva = int.Parse(textBox1.Text.Trim()); //consigo del codigo de reserva el idEstadia idEstadia = repoReserva.getIdEstadiaByCodReserva(codReserva); if (idEstadia != 0) { //veo que este con RCI String estado = ""; estado = repoEstadia.getEstado(codReserva); Reserva reserva = repoReserva.getIdByIdEstadia(idEstadia); if (this.sesion.getHotel().getIdHotel() != reserva.getHotel().getIdHotel()) { MessageBox.Show("La reserva ingresada no pertenece al hotel en el que el usuario esta logueado.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (estado.Equals("RCI") | estado.Equals("RCCR")) { //Estadia estadia = new Estadia(idEstadia, this.sesion.getUsuario(), date); Estadia estadia = reserva.getEstadia(); estadia.setFechaSalida(date); estadia.setCantidadNoches(Convert.ToDecimal((date - reserva.getFechaDesde()).TotalDays)); estadia.setUsuarioOut(this.sesion.getUsuario()); repoEstadia.update(estadia); //hago update de EstadoReserva RepositorioEstadoReserva repoEstadoReserva = new RepositorioEstadoReserva(); //int idEstadoReserva = 0; //Reserva reserva = repoReserva.getIdByIdEstadia(estadia.getIdEstadia()); String desc = "Reserva Con Egreso"; String tipoEstado = "RCE"; EstadoReserva estadoReserva = new EstadoReserva(reserva.getIdReserva(), this.sesion.getUsuario(), reserva, tipoEstado, date, desc); repoEstadoReserva.update(estadoReserva); MessageBox.Show("Check out correcto, proceder a facturar Estadia.", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); } else { MessageBox.Show("La reserva ingresada no esta actualmente en estado 'Reserva con Ingreso' o 'Reserva con Consumibles Registrados'.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("La estadia asociada a la reserva ingresada no existe.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Ingrese un numero de reserva válido.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } //llamo a facturar estadia para que sea mas happy path /*using (AltaFacturaEstadia form = new AltaFacturaEstadia()) * { * var result = form.ShowDialog(); * * if (result == DialogResult.OK) * { * * } * }*/ }
public VentanaRegistrarEgreso(Estadia estadia, Usuario usuario) { InitializeComponent(); this.estadia = estadia; this.usuario = usuario; }