public void insertar(RutaAerea r) { string[] parametros = { "@Ruta_Codigo", "@Ciudad_Origen_ID", "@Ciudad_Destino_ID", "@Ruta_Precio_Kg", "@Ruta_Precio_Pasaje", "@Ruta_Habilitada" }; DatosSistema datos = new DatosSistema(); datos.Ejecutar("[INFONIONIOS].[spInsertRutaAerea]", parametros,r.codigoRutaAerea,r.idCiudadOrigen,r.idCiudadDestino,r.precioKGRutaAerea,r.precioPasajeRutaAerea,r.habilitadaRutaAerea); }
public formAMRutaAerea(RutaAerea ruta) { InitializeComponent(); rutaActual = null; modoAlta = (ruta == null); if (!modoAlta) { rutaActual = ruta; } }
private void btnGenerar_Click(object sender, EventArgs e) { try { string mensaje = string.Empty; if (cboMatriculas.SelectedIndex == -1) { mensaje += "Debe seleccionar una aeronave." + Environment.NewLine; } if (cboOrigen.SelectedIndex == -1) { mensaje += "Debe seleccionar una ciudad de origen." + Environment.NewLine; } if (cboDestino.SelectedIndex == -1) { mensaje += "Debe seleccionar una ciudad de destino." + Environment.NewLine; } if (cboOrigen.SelectedIndex == cboDestino.SelectedIndex) { mensaje += "Las ciudades no pueden ser iguales." + Environment.NewLine; } if (dtpFechaSalida.Value < ConfiguracionGlobal.FechaSistema) { mensaje += "La fecha debe ser posterior a la fecha actual." + Environment.NewLine; } if ((dtpFechaLlegadaEstimada.Value < dtpFechaSalida.Value.AddHours(1))) { mensaje += "El viaje tiene que durar más de una hora." + Environment.NewLine; } if ((dtpFechaLlegadaEstimada.Value > dtpFechaSalida.Value.AddDays(1))) { mensaje += "El viaje tiene que durar menos de un día." + Environment.NewLine; } if (!string.IsNullOrEmpty(mensaje)) { throw new Exception(mensaje); } Aeronave a = (Aeronave)cboMatriculas.SelectedItem; Ciudad origen = (Ciudad)cboOrigen.SelectedItem; Ciudad destino = (Ciudad)cboDestino.SelectedItem; RutaAerea ra = new RutaAerea().obtenerRutaAereaPorCiudades(origen.idCiudad, destino.idCiudad); if (ra == null) { throw new Exception(string.Format("No se ha encontrado una ruta aerea de {0} a {1}.",origen.nombreCiudad,destino.nombreCiudad)); } List<ServicioPorRuta> serviciosRuta = new ServicioPorRuta().obtenerListaPorIdRuta(ra.idRutaAerea); if (!serviciosRuta.Exists(sr => sr.idTipoServicio == a.idTipoServicio)) { throw new Exception(string.Format("El servicio de la aeronave no coincide con ninguno de la ruta aerea entre {0} y {1}.",origen.nombreCiudad,destino.nombreCiudad)); } if (new Aeronave().tieneViajesEntreHorarios(dtpFechaSalida.Value, dtpFechaLlegadaEstimada.Value,a.idAeronave)) { dtpFechaSalida.Value = DateTime.Now; actualizarExtremosFechas(); throw new Exception("La aeronave seleccionada no esta disponible en ese rango horario."); } var msg = MessageBox.Show("¿Está seguro que desea generar el viaje ingresado?", "Atención", MessageBoxButtons.YesNo); if (msg == DialogResult.Yes) { new Viaje().generarViaje(a.idAeronave, ra.idRutaAerea, dtpFechaSalida.Value, dtpFechaLlegadaEstimada.Value); MessageBox.Show("El viaje ha sido generado correctamente.", "OK"); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error"); } }
private void btnLlegada_Click(object sender, EventArgs e) { try { string mensaje = string.Empty; if (cboMatriculas.SelectedIndex == -1) { mensaje += "Debe seleccionar una matricula." + Environment.NewLine; } if (cboCiudadOrigen.SelectedIndex == -1) { mensaje += "Debe seleccionar una ciudad de origen." + Environment.NewLine; } if (cboCiudadDestino.SelectedIndex == -1) { mensaje += "Debe seleccionar una ciudad de destino." + Environment.NewLine; } if (dtpSalida.Value > ConfiguracionGlobal.FechaSistema) { mensaje += "La fecha de salida tiene que ser anterior a la fecha actual." + Environment.NewLine; } if (cboCiudadOrigen.SelectedValue == cboCiudadDestino.SelectedValue) { mensaje += "Las ciudades no pueden ser iguales."; } if (!string.IsNullOrEmpty(mensaje)) { throw new Exception(mensaje); } Aeronave a = (Aeronave)cboMatriculas.SelectedItem; RutaAerea ruta = new RutaAerea().obtenerRutaAereaPorCiudades((int)cboCiudadOrigen.SelectedValue, (int)cboCiudadDestino.SelectedValue); if (ruta == null) { throw new Exception("No se ha encontrado la ruta aerea ingresada."); } Viaje v = new Viaje().obtenerViajePorAeroRutaYFechaSalida(a.idAeronave, ruta.idRutaAerea, dtpSalida.Value); if (v == null) { throw new Exception("No se ha encontrado el viaje solicitado."); } if (v.fechaLlegadaViaje != DateTime.MinValue) { throw new Exception("Ya se ha registrado la fecha de llegada del viaje ingresado."); } var frmInfo = new frmInfoAeronave(a, v); frmInfo.ShowDialog(); limpiarCampos(); } catch (Exception exc) { MessageBox.Show(exc.Message,"Error"); } }
private void totalCompra() { total = 0; Aeronave a = new Aeronave().obtenerHabilitadasLista().Find(aer => aer.idAeronave == viajeCompra.idAeronave); TipoServicio ts = new TipoServicio().obtenerPorId(a.idTipoServicio); RutaAerea ra = new RutaAerea().obtenerRutaAereaPorId(viajeCompra.idRutaAerea); precioPorPasaje = (int)ra.precioPasajeRutaAerea + ((ts.porcentajeTipoServicio / 100) * (int)ra.precioPasajeRutaAerea); precioPorPasaje = Math.Round(precioPorPasaje, 2); total = precioPorPasaje * cantPasajes; if (kgsEncomienda > 0) { precioEncomienda = ((int)ra.precioKGRutaAerea * kgsEncomienda); precioEncomienda = Math.Round(precioEncomienda, 2); total += precioEncomienda; } }
private void dgvRutaAerea_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex == -1) return; RutaAerea ruta = new RutaAerea().obtenerRutaAereaPorId((int)dgvRutaAerea.Rows[e.RowIndex].Cells[0].Value); if (ruta != null) { if (e.ColumnIndex == 7) { var frmAM = new formAMRutaAerea(ruta); frmAM.ShowDialog(); this.actualizar(new RutaAerea().obtenerRutasAereasDGV()); this.limpiarFiltros(); } else if (e.ColumnIndex == 8) { if (!ruta.habilitadaRutaAerea) { MessageBox.Show("La ruta ya se encuentra inhabilitada.", "Error"); return; } var respuesta = MessageBox.Show(string.Format("¿Está seguro que desea inhabilitar la ruta {0} que va de {1} a {2}?", ruta.codigoRutaAerea, dgvRutaAerea.Rows[e.RowIndex].Cells[4].Value.ToString(), dgvRutaAerea.Rows[e.RowIndex].Cells[5].Value.ToString()), "Atención", MessageBoxButtons.YesNo); if (respuesta == DialogResult.Yes) { ruta.habilitadaRutaAerea = false; ruta.actualizarRuta(ruta); ruta.cancelarPorRutaInhabilitada(ruta, UsuarioLogueado.usuario); this.actualizar(new RutaAerea().obtenerRutasAereasDGV()); this.limpiarFiltros(); } } } }
private void btnAceptar_Click(object sender, EventArgs e) { try { var mensajeError = String.Empty; if (nudCodigo.Value == Decimal.Zero) { mensajeError += "El codigo no puede ser 0." + Environment.NewLine; } if (nudPrecioKg.Value == Decimal.Zero) { mensajeError += "El precio base por KG no puede ser 0." + Environment.NewLine; } if (nudPrecioPasaje.Value == Decimal.Zero) { mensajeError += "El precio base por pasaje no puede ser 0." + Environment.NewLine; } if (cboCiudadOrigen.SelectedIndex == -1) { mensajeError += "No seleccionó una ciudad de origen." + Environment.NewLine; } if (cboCiudadDestino.SelectedIndex == -1) { mensajeError += "No seleccionó una ciudad de destino." + Environment.NewLine; } if (cboCiudadOrigen.SelectedIndex == cboCiudadDestino.SelectedIndex) { mensajeError += "La ciudad de origen y destino no pueden ser la misma." + Environment.NewLine; } if (!string.IsNullOrEmpty(mensajeError)) { throw new Exception(mensajeError); } if (modoAlta) { if (new RutaAerea().existeRuta((int)nudCodigo.Value, null, null)) { throw new Exception("Ya existe una ruta con ese codigo."); } if (new RutaAerea().existeRuta(null, (int)cboCiudadOrigen.SelectedValue, (int)cboCiudadDestino.SelectedValue)) { throw new Exception("Ya existe una ruta con mismas ciudades de origen y destino."); } RutaAerea r = new RutaAerea(); r.codigoRutaAerea = (int)nudCodigo.Value; r.idCiudadOrigen = (int)cboCiudadOrigen.SelectedValue; r.idCiudadDestino = (int)cboCiudadDestino.SelectedValue; r.habilitadaRutaAerea = !chkInhabilitado.Checked; r.precioKGRutaAerea = (Decimal)nudPrecioKg.Value; r.precioPasajeRutaAerea = (Decimal)nudPrecioPasaje.Value; r.insertar(r); r.idRutaAerea = r.obtenerIdPorCodigoYCiudades(r); formServicioPorRuta frmS = new formServicioPorRuta(r, true); frmS.ShowDialog(); Close(); } else { RutaAerea rutaModificada = rutaActual; if (rutaModificada.codigoRutaAerea != nudCodigo.Value) { if (new RutaAerea().existeRuta((int)nudCodigo.Value, null, null)) { throw new Exception("Ya existe una ruta con ese codigo."); } } rutaModificada.codigoRutaAerea = nudCodigo.Value; if (rutaModificada.idCiudadOrigen != (int)cboCiudadOrigen.SelectedValue || rutaModificada.idCiudadDestino != (int)cboCiudadDestino.SelectedValue) { if (new RutaAerea().existeRuta(null, (int)cboCiudadOrigen.SelectedValue, (int)cboCiudadDestino.SelectedValue)) { throw new Exception("Ya existe una ruta con mismas ciudades de origen y destino."); } } rutaModificada.idCiudadOrigen = (int)cboCiudadOrigen.SelectedValue; rutaModificada.idCiudadDestino = (int)cboCiudadDestino.SelectedValue; rutaModificada.precioKGRutaAerea = nudPrecioKg.Value; rutaModificada.precioPasajeRutaAerea = nudPrecioPasaje.Value; rutaModificada.habilitadaRutaAerea = !chkInhabilitado.Checked; rutaModificada.actualizarRuta(rutaModificada); formServicioPorRuta frmS = new formServicioPorRuta(rutaModificada, false); frmS.ShowDialog(); Close(); } } catch (Exception exc) { MessageBox.Show(exc.Message, "Error"); } }
public formServicioPorRuta(RutaAerea ruta, bool alta) { InitializeComponent(); modoAlta = alta; rutaActual = ruta; }
public RutaAerea obtenerRutaAereaPorCiudades(int o, int d) { RutaAerea r = new RutaAerea(); DatosSistema datos = new DatosSistema(); string[] param = { "@ciudadO","@ciudadD" }; DataTable dt = datos.getDatosTabla("[INFONIONIOS].[spObtenerRutaAereaPorCiudades]", param, o,d); if (dt.Rows.Count != 0) { r.idRutaAerea = Int32.Parse(dt.Rows[0]["RUTA_AEREA_ID"].ToString()); r.codigoRutaAerea = Decimal.Parse(dt.Rows[0]["RUTA_AEREA_CODIGO"].ToString()); r.precioKGRutaAerea = Decimal.Parse(dt.Rows[0]["RUTA_AEREA_PRECIO_KG"].ToString()); r.precioPasajeRutaAerea = Decimal.Parse(dt.Rows[0]["RUTA_AEREA_PRECIO_PASAJE"].ToString()); r.idCiudadOrigen = Int32.Parse(dt.Rows[0]["CIUDAD_ORIGEN_ID"].ToString()); r.idCiudadDestino = Int32.Parse(dt.Rows[0]["CIUDAD_DESTINO_ID"].ToString()); r.habilitadaRutaAerea = Boolean.Parse(dt.Rows[0]["RUTA_AEREA_HABILITADA"].ToString()); } else { return null; } return r; }
public int obtenerIdPorCodigoYCiudades(RutaAerea r) { DataTable dt = this.obtenerRutasAereasFiltro((int)r.codigoRutaAerea, Decimal.Zero, Decimal.Zero, Decimal.Zero, Decimal.Zero, r.idCiudadOrigen, r.idCiudadDestino, null); return Int32.Parse(dt.Rows[0]["RUTA_AEREA_ID"].ToString()); }
public void cancelarPorRutaInhabilitada(RutaAerea r, Usuario u) { string[] parametros = { "@rutaId","@motivo","@usuarioId", "@fechaActual" }; DatosSistema datos = new DatosSistema(); datos.Ejecutar("[INFONIONIOS].[spCancelarPorRutaInhabilitada]", parametros, r.idRutaAerea, "La Ruta Aerea asociada ha sido inhabilitada.", u.idUsuario, ConfiguracionGlobal.FechaSistema); }
public void actualizarRuta(RutaAerea rutaModificada) { string[] parametros = { "@id", "@codigo", "@ciudadO", "@ciudadD", "@precioKg", "@precioPasaje", "@habilitada" }; DatosSistema datos = new DatosSistema(); datos.Ejecutar("[INFONIONIOS].[spUpdateRutaAerea]", parametros, rutaModificada.idRutaAerea, rutaModificada.codigoRutaAerea, rutaModificada.idCiudadOrigen, rutaModificada.idCiudadDestino, rutaModificada.precioKGRutaAerea, rutaModificada.precioPasajeRutaAerea, rutaModificada.habilitadaRutaAerea); }
public List<RutaAerea> obtenerTodasLista() { List<RutaAerea> rutas = new List<RutaAerea>(); DataTable dt = this.obtenerRutasAereas(); foreach (DataRow row in dt.Rows) { RutaAerea r = new RutaAerea(); r.idRutaAerea = Int32.Parse(row["RUTA_AEREA_ID"].ToString()); r.codigoRutaAerea = Decimal.Parse(row["RUTA_AEREA_CODIGO"].ToString()); r.precioKGRutaAerea = Decimal.Parse(row["RUTA_AEREA_PRECIO_KG"].ToString()); r.precioPasajeRutaAerea = Decimal.Parse(row["RUTA_AEREA_PRECIO_PASAJE"].ToString()); r.idCiudadOrigen = Int32.Parse(row["CIUDAD_ORIGEN_ID"].ToString()); r.idCiudadDestino = Int32.Parse(row["CIUDAD_DESTINO_ID"].ToString()); r.habilitadaRutaAerea = Boolean.Parse(row["RUTA_AEREA_HABILITADA"].ToString()); rutas.Add(r); } return rutas; }