Пример #1
0
 private void btnReservarYPagar_Click(object sender, EventArgs e)
 {
     if (string.IsNullOrEmpty(this.txtOrigen.Text) || string.IsNullOrEmpty(this.txtDestino.Text) || string.IsNullOrEmpty(this.txtModeloCrucero.Text) ||
         string.IsNullOrEmpty(this.txtCabina.Text) || this.Cliente == null)
     {
         MessageBox.Show("Debe completar todos los datos para reservar");
     }
     else
     {
         if (DBConnection.getInstance().executeQuery(QueryProvider.SELECT_RESERVA_CLIENTE(Convert.ToString(this.Cliente.Id), dtpSalida.Value.Date.ToString("yyyy-MM-dd HH:mm:ss.fff"), dtpRegreso.Value.Date.ToString("yyyy-MM-dd HH:mm:ss.fff"))).Tables[0].Rows.Count > 0)
         {
             MessageBox.Show("El cliente ya tiene una reserva para esa fecha");
         }
         else
         {
             if (DBConnection.getInstance().executeQuery(QueryProvider.SELECT_RESERVA(Convert.ToString(this.reserva.Id))).Tables[0].Rows.Count == 0)
             {
                 confirmarReserva();
             }
             else
             {
                 PagoForm pf = new PagoForm(this.reserva.Id, this.reserva.Viaje.Id, this.crucero.Id);
                 pf.ShowDialog();
             }
         }
     }
 }
        private void button1_Click(object sender, EventArgs e)
        {
            if (idReservaText.Text.Length == 0)
            {
                MessageBox.Show("Ingrese un codiggo de reserva");
                return;
            }
            SqlDataReader datosReserva;
            string        consulta;
            Query         miConsulta;

            try
            {
                consulta = "   select top 1  r.id_reserva ,r.reserva_fecha ,r.reserva_cantidad_pasajes ,r.reserva_cliente ,r.reserva_viaje FROM [GD1C2019].[LOS_BARONES_DE_LA_CERVEZA].[Reserva] r "
                           + " join [GD1C2019].[LOS_BARONES_DE_LA_CERVEZA].[Estado_Cabinas_Por_Viaje] cxv   ON r.id_reserva = cxv.reserva "
                           + " WHERE id_reserva = " + idReservaText.Text;
                miConsulta   = new Query(consulta, new List <Parametro>());
                datosReserva = miConsulta.ejecutarReaderFila();
                datosReserva.Read();
                MessageBox.Show(datosReserva["reserva_viaje"].ToString());
            }
            catch (Exception unError)
            {
                MessageBox.Show("Codigo de reserva no encontrado");
                unError.ToString();
                return;
            }
            id_reserva         = int.Parse(datosReserva["id_reserva"].ToString());
            reserva_cliente_id = int.Parse(datosReserva["reserva_cliente"].ToString());
            int viaje_id = int.Parse(datosReserva["reserva_viaje"].ToString());

            this.viaje = new Viaje(viaje_id);
            Cliente cliente = new Cliente(reserva_cliente_id);

            //hago un display cabina porque asi lo toma el pago form
            List <DisplayCabina> displaysCabinas = new List <DisplayCabina>();

            displaysCabinas.Add(new DisplayCabina(new Label(), new NumericUpDown(), new Label(), new Label()));
            displaysCabinas.Add(new DisplayCabina(new Label(), new NumericUpDown(), new Label(), new Label()));
            displaysCabinas.Add(new DisplayCabina(new Label(), new NumericUpDown(), new Label(), new Label()));
            displaysCabinas.Add(new DisplayCabina(new Label(), new NumericUpDown(), new Label(), new Label()));
            displaysCabinas.Add(new DisplayCabina(new Label(), new NumericUpDown(), new Label(), new Label()));


            consulta   = "SELECT TOP 1000 [id_tipo_cabina] ,[tipo_cabina] ,[porcentaje_recargo] FROM [GD1C2019].[LOS_BARONES_DE_LA_CERVEZA].[Tipos_Cabinas]";
            miConsulta = new Query(consulta, new List <Parametro>());
            SqlDataReader datosCabina = miConsulta.ejecutarReaderFila();
            TipoCabina    nuevaCabina;

            for (int count = 0; count < 5; count++)
            {
                datosCabina.Read();
                nuevaCabina = new TipoCabina((int)datosCabina["id_tipo_cabina"], datosCabina["tipo_cabina"].ToString(), double.Parse(datosCabina["porcentaje_recargo"].ToString()));
                displaysCabinas[count].setTipoCabina(nuevaCabina);
                displaysCabinas[count].cargarCabinasReservadas(id_reserva);
            }


            PagoForm pagoForm = new PagoForm(displaysCabinas, viaje, cliente, false, id_reserva);

            pagoForm.ShowDialog();
            pagoForm.Close();
        }