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");
         }
     }
 }
Beispiel #3
0
 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));
     }
 }
Beispiel #4
0
 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);
     }
 }
Beispiel #5
0
        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;
 }