private void btnRegistrar_Click(object sender, EventArgs e)
        {
            DateTime fechaLlegada = fechaSistema.Date.Add(dpFechaLlegada.Value.TimeOfDay);

            if (fechaLlegada < vueloSeleccionado.fechaSalida)
            {
                MessageBox.Show("La fecha y hora de llegada no puede ser previa a la de salida");
            }
            else
            {
                if (dpFechaLlegada.Value>fechaSistema)
                {
                    MessageBox.Show("La fecha de llegada no puede ser posterior a la fecha de sistema");
                }
                else
                {
                    var fechaHoraLlegadaFormateada = fechaLlegada.ToString("dd'/'MM'/'yyyy HH':'mm':'ss");
                    vueloSeleccionado.fechaLlegada = Convert.ToDateTime(fechaHoraLlegadaFormateada);
                    this.Enabled = false;
                    Cursor.Current = Cursors.WaitCursor;
                    Boolean modificado = viajeController.actualizarViaje(vueloSeleccionado);

                    List<Model.VentaModel> ventasDelViaje = compraController.buscarVentas(vueloSeleccionado.viajeId);

                    foreach (Model.VentaModel venta in ventasDelViaje)
                    {

                        List<Model.PasajeModel> pasajesDeLaVenta = compraController.buscarPasajes(venta.ventaPnr);
                        Model.HistorialMillasModel historialMillas = null;
                        double millasAsignadas = 0;
                        foreach (Model.PasajeModel pasaje in pasajesDeLaVenta)
                        {
                            millasAsignadas = pasaje.pasajeMonto * 0.1;
                            historialMillas = new Model.HistorialMillasModel(pasaje.pasajeCliente, millasAsignadas, fechaSistema, Model.TipoOperacion.ACREDITACION, "ACREDITACIÓN DE MILLAS POR PASAJE COMPRADO");
                            millasController.registrarMillas(historialMillas);
                        }

                        Model.PaqueteModel paqueteDeLaVenta = compraController.buscarPaquetes(venta.ventaPnr);
                        if (paqueteDeLaVenta != null)
                        {
                            millasAsignadas = paqueteDeLaVenta.paqueteMonto * 0.1;
                            historialMillas = new Model.HistorialMillasModel(venta.ventaClientePagador, millasAsignadas, fechaSistema, Model.TipoOperacion.ACREDITACION, "ACREDITACIÓN DE MILLAS POR PAQUETE COMPRADO");
                            millasController.registrarMillas(historialMillas);
                        }

                    }

                    butacaController.borrarButacasViaje(vueloSeleccionado.viajeId);

                    MessageBox.Show("Se registró correctamente la llegada a destino del vuelo.");
                    Cursor.Current = Cursors.Default;
                    this.Enabled = true;

                    this.Close();
                    new AerolineasFRBA().Show();
                }
            }
        }
Esempio n. 2
0
 private void btnCanjear_Click(object sender, EventArgs e)
 {
     double millasADescontar = Convert.ToDouble(tbCantidad.Text) * productoSeleccionado.costoMillas;
     double millasActuales = Convert.ToDouble(tbMillasAcum.Text);
     if (millasADescontar <= millasActuales)
     {
         Model.HistorialMillasModel histMillas = new Model.HistorialMillasModel(Convert.ToInt32(clienteEncontrado.clienteId), millasADescontar, fechaSistema, Model.TipoOperacion.CANJE, "DESCUENTO POR CANJE DE PRODUCTO");
         millasController.registrarMillas(histMillas);
         int idHistorial = millasController.buscarUltimoRegistroMillas();
         millasController.registrarCanje(productoSeleccionado.idProducto, Convert.ToInt32(clienteEncontrado.clienteId), Convert.ToInt32(tbCantidad.Text));
         millasActuales = millasActuales - millasADescontar;
         MessageBox.Show("Canje realizado con éxito");
         tbMillasAcum.Text = millasActuales.ToString();
     }
     else
     {
         MessageBox.Show("Las millas acumuladas no son suficientes para canjear el producto seleccionado.");
     }
 }