private void tabEditarViajes_Selected(object sender, RoutedEventArgs e) { this.listadoRecorridos.Visibility = Visibility.Hidden; this.cOrigenEditar.Items.Clear(); this.cDestinoEditar.Items.Clear(); List <Parada> AllCiudadesGenerales = ParadaFacade.buscarOrigenesGenerales(); foreach (Parada ciudadOrigen in AllCiudadesGenerales) { Boolean validarCiudades = true;; for (int i = 0; i < this.cOrigenEditar.Items.Count; i++) { if (ciudadOrigen.ciudad.nombre.Equals(this.cOrigenEditar.Items.GetItemAt(i))) { validarCiudades = false; } } if (validarCiudades) { this.cOrigenEditar.Items.Add(ciudadOrigen.ciudad.nombre); } } }
private void comboOrigen_DropDownClosed(object sender, EventArgs e) { comboDestino.Items.Clear(); // OBTENER ID CIUDAD ELEGIDA. List <int> recorridos = new List <int>(); string ciudadOrigenElegida = this.comboOrigen.Text; Ciudad origen = CiudadFacade.buscarCiudadPorNombre(ciudadOrigenElegida); List <Parada> Origenes = ParadaFacade.buscarOrigenesGenerales(); foreach (Parada ciudadesOrigenes in Origenes) { if (ciudadesOrigenes.ciudad.nombre.Equals(ciudadOrigenElegida)) { recorridos.Add(ciudadesOrigenes.recorrido); } } List <Parada> destinos = ParadaFacade.buscarDestinosGeneralesByCiudad(origen, recorridos); foreach (Parada ciudad in destinos) { Boolean validarCiudades = true;; for (int i = 0; i < this.comboDestino.Items.Count; i++) { if (ciudad.ciudad.nombre.Equals(this.comboDestino.Items.GetItemAt(i))) { validarCiudades = false; } } if (validarCiudades) { this.comboDestino.Items.Add(ciudad.ciudad.nombre); } } }
public void crearTabla() { horarios.Children.Clear(); horarios.ColumnDefinitions.Clear(); horarios.RowDefinitions.Clear(); //paradas.Clear(); TextBox tHorarios; try { // ENCABEZADO 3 COLUMNAS EN LA PRIMERA FILA this.horarios.ColumnDefinitions.Add(new ColumnDefinition()); this.horarios.ColumnDefinitions.Add(new ColumnDefinition()); this.horarios.ColumnDefinitions.Add(new ColumnDefinition()); this.horarios.RowDefinitions.Add(new RowDefinition()); Label llegadaHeader = new Label(); llegadaHeader.Content = "LLEGADA"; llegadaHeader.Style = Resources["HeaderTabla"] as Style; llegadaHeader.SetValue(Grid.ColumnProperty, 0); llegadaHeader.SetValue(Grid.RowProperty, 0); this.horarios.Children.Add(llegadaHeader); Label salidadHeader = new Label(); salidadHeader.Content = "SALIDA"; salidadHeader.Style = Resources["HeaderTabla"] as Style; salidadHeader.SetValue(Grid.ColumnProperty, 1); salidadHeader.SetValue(Grid.RowProperty, 0); this.horarios.Children.Add(salidadHeader); Label intermediosHeader = new Label(); intermediosHeader.Content = "INTERMEDIOS"; intermediosHeader.Style = Resources["HeaderTabla"] as Style; intermediosHeader.Width = 200; intermediosHeader.SetValue(Grid.ColumnProperty, 2); intermediosHeader.SetValue(Grid.RowProperty, 0); this.horarios.Children.Add(intermediosHeader); List <Parada> paradas = ParadaFacade.buscarCiudadesPorRecorrido(this.recorrido); /* * MySqlConnection con = conexionDB.ObtenerConexion(); * string sql = "SELECT CIUDAD FROM PARADA WHERE RECORRIDO = '" + this.recorrido + "'"; * MySqlCommand cmd = new MySqlCommand(sql, con); * MySqlDataReader dr = cmd.ExecuteReader(); * * while (dr.Read()) * { * * paradas.Add(dr.GetString(0)); * * * } * con.Close(); * */ int largo = paradas.Count; this.horarios.ColumnDefinitions[0].Width = new System.Windows.GridLength(70); this.horarios.ColumnDefinitions[1].Width = new System.Windows.GridLength(70); for (int z = 0; z < largo; z++) { this.horarios.RowDefinitions.Add(new RowDefinition()); this.horarios.RowDefinitions[z].Height = new System.Windows.GridLength(40); } this.horarios.RowDefinitions[horarios.RowDefinitions.Count - 1].Height = new System.Windows.GridLength(40); int contador = 0; for (int row = 1; row < this.horarios.RowDefinitions.Count; row++) { for (int col = 0; col < this.horarios.ColumnDefinitions.Count; col++) { if ((col == 0 && row == 1) || (col == 1 && row == horarios.RowDefinitions.Count - 1)) { tHorarios = new TextBox(); tHorarios.Style = Resources["ItemTablaGuion"] as Style; tHorarios.Text = "-"; tHorarios.SetValue(Grid.ColumnProperty, col); tHorarios.SetValue(Grid.RowProperty, row); this.horarios.Children.Add(tHorarios); } else if (col == 2 && row != 0) { if (contador < paradas.Count) { tHorarios = new TextBox(); tHorarios.Style = Resources["ItemTablaGuion"] as Style; //tHorarios.Text = ciudadBuscada; tHorarios.Text = paradas[contador].ciudad.nombre; tHorarios.SetValue(Grid.ColumnProperty, col); tHorarios.SetValue(Grid.RowProperty, row); this.horarios.Children.Add(tHorarios); //con.Close(); } } else { tHorarios = new TextBox(); tHorarios.Style = Resources["ItemTablaGuion"] as Style; tHorarios.Text = "00:00"; tHorarios.MaxLength = 5; tHorarios.IsReadOnly = false; tHorarios.SetValue(Grid.ColumnProperty, col); tHorarios.SetValue(Grid.RowProperty, row); this.horarios.Children.Add(tHorarios); } } contador++; } } catch (Exception ex) { validar validarError = new validar(); validarError.show(ex.Message); } }
private void crear_Click(object sender, RoutedEventArgs e) { List <string> rango_fecha = new List <string>(); List <string> listado_horarios = new List <string>(); // List<int> id_trayectos = new List<int>(); if (validarInsertViajeDiario()) { DateTime inicio = DateTime.Parse(this.fechaDesde.Text); DateTime final = DateTime.Parse(this.fechaHasta.Text); for (DateTime i = inicio; i <= final; i = i.AddDays(1)) { rango_fecha.Add(i.ToString("dd-MM-yyyy")); } foreach (UIElement ui in this.horarios.Children) { int row = System.Windows.Controls.Grid.GetRow(ui); int col = System.Windows.Controls.Grid.GetColumn(ui); if ((row == 0) && (col == 0 || col == 1 || col == 2)) { Label label = (Label)ui; } else { TextBox txt = (TextBox)ui; listado_horarios.Add(txt.Text); } } string id_recorrido = this.recorrido.ToString(); string identificadorViaje = identificador.Text; string fechaInicioViaje = fechaDesde.Text; string fechaFinViaje = fechaHasta.Text; try{ // INSERT EN LA TABLA TRAYECTO GUARDO EL VIAJE MySqlConnection con = conexionDB.ObtenerConexion(); string insertString = "INSERT INTO viajes (RECORRIDO,IDENTIFICADOR,DESDE,HASTA) VALUES (?recorrido,?identificador,?desde,?hasta)"; MySqlCommand cmd = new MySqlCommand(insertString, con); cmd.Parameters.Add("?recorrido", Convert.ToInt32(id_recorrido)); cmd.Parameters.Add("?identificador", identificadorViaje); cmd.Parameters.Add("?desde", fechaInicioViaje); cmd.Parameters.Add("?hasta", fechaFinViaje); cmd.ExecuteNonQuery(); con.Close(); //con.Open(); List <Trayecto> id_trayectos = TrayectoFacade.buscarPorRecorrido(this.recorrido); // OBTENGO LOS TRAYECTOS SEGUN EL VIAJE /*string selectTrayectos = "SELECT ID FROM TRAYECTO WHERE RECORRIDO = " + this.recorrido; * * cmd = new MySqlCommand(selectTrayectos, con); * * MySqlDataReader dr; * dr = cmd.ExecuteReader(); * while (dr.Read()) * { * id_trayectos.Add(dr.GetInt32(0)); * * } * con.Close();*/ con.Open(); int id_viaje = 0; //OBTENGO EL ID DEL VIAJE CREADO. string selectIDVIAJE = "SELECT ID FROM VIAJES WHERE RECORRIDO = " + this.recorrido + " AND IDENTIFICADOR = '" + identificadorViaje + "'"; cmd = new MySqlCommand(selectIDVIAJE, con); MySqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { id_viaje = (dr.GetInt32(0)); } con.Close(); // INSERT EN VIAJES DIARIOS string rutChofer = obtenerRutPersona(comboChofer.Text, "CHOFER"); string rutAuxiliar = obtenerRutPersona(comboAuxiliar.Text, "AUXILIAR"); for (int i = 0; i < rango_fecha.Count; i++) { for (int j = 0; j < id_trayectos.Count; j++) { con.Open(); insertString = "INSERT INTO viajes_diarios (VIAJE,TRAYECTO,FECHA,BUS,CHOFER,AUXILIAR,ASIENTOS_DISPONIBLES,RUTA_ARCHIVO) VALUES (?viaje,?trayecto,?fecha,?bus,?chofer,?auxiliar,45,'VACIO')"; cmd = new MySqlCommand(insertString, con); cmd.Parameters.Add("?viaje", id_viaje); cmd.Parameters.Add("?trayecto", id_trayectos[j].id); cmd.Parameters.Add("?fecha", rango_fecha[i]); cmd.Parameters.Add("?bus", comboBus.Text); cmd.Parameters.Add("?chofer", rutChofer); cmd.Parameters.Add("?auxiliar", rutAuxiliar); cmd.ExecuteNonQuery(); con.Close(); } } // INSERT EN HORARIOS for (int i = 0; i < listado_horarios.Count; i = i + 3) { con.Open(); insertString = "INSERT INTO HORARIOS (VIAJE,LLEGADA,SALIDA,PARADA) VALUES (?viaje,?llegada,?salida,?parada)"; cmd = new MySqlCommand(insertString, con); cmd.Parameters.Add("?viaje", id_viaje); cmd.Parameters.Add("?llegada", listado_horarios[i]); cmd.Parameters.Add("?salida", listado_horarios[i + 1]); Parada paradaCiudad = ParadaFacade.buscarPorRecorridoCiudad(this.recorrido, (listado_horarios[i + 2])); cmd.Parameters.Add("?parada", paradaCiudad.id); cmd.ExecuteNonQuery(); con.Close(); } nuevoViaje nuevoViajeDiario = new nuevoViaje(); nuevoViajeDiario.Show(); } // FIN TRY catch (Exception ex) { validar vInsert = new validar(); vInsert.show(ex.Message); } } // FIN IF DATOS VALIDOS }
private void Guardar_Click(object sender, RoutedEventArgs e) { if (this.lp.Count > 1) { bool okPrecios = true; TextBox txt; int idParada = -1; List <Trayecto> trayectos = new List <Trayecto>(); string[,] precios = new string[this.lp.Count, this.lp.Count]; foreach (UIElement ui in this.tabla.Children) { int row = System.Windows.Controls.Grid.GetRow(ui); int col = System.Windows.Controls.Grid.GetColumn(ui); if (row != 0 && col != 0) { txt = (TextBox)ui; precios[row - 1, col - 1] = txt.Text; } } try { idParada = ParadaFacade.obtenerProximoId(); idParada = idParada + lp.Count - 1; Parada parada = new Parada(idParada, CiudadFacade.buscarPorNombre(lp[lp.Count - 1]), new Parada()); Parada siguiente = parada; Console.WriteLine("Ultima parada: " + parada.id + " siguiente: " + parada.siguiente.id); // Estructura las paradas for (int i = lp.Count - 2; i > -1; i--) { idParada = idParada - 1; parada = new Parada(idParada, CiudadFacade.buscarPorNombre(lp[i]), siguiente); siguiente = parada; Console.WriteLine("Parada: " + parada.id + " siguiente: " + parada.siguiente.id); } // estructura los trayectos for (int i = 0; i < lp.Count; i++) { for (int j = i + 1; j < lp.Count; j++) { if (Convert.ToInt32(precios[i, j]) <= 0) { okPrecios = false; } trayectos.Add(new Trayecto(CiudadFacade.buscarPorNombre(lp[i]), CiudadFacade.buscarPorNombre(lp[j]), Convert.ToInt32(precios[i, j]))); } } Recorrido recorrido = new Recorrido(parada, trayectos); try { if (okPrecios == true) { RecorridoFacade.guardar(recorrido); okAlerta alert = new okAlerta(); alert.show("Recorrido Ingresado Correctamente"); this.DialogResult = true; this.Close(); } else { validar alert = new validar(); alert.show("La Tarifa del trayecto debe ser MAYOR que 0"); } } catch (Exception ex) { validar alert = new validar(); alert.show("No se pudo Guardar el Recorrido. Por favor verifique los datos"); } } catch (Exception ex) { validar alert = new validar(); alert.show("Error al obtener datos. Verifique las paradas nuevamente."); } } else { validar alert = new validar(); alert.show("El Recorrido debe tener como minimo dos Paradas"); } }
private void editar_Click(object sender, RoutedEventArgs e) { if (validarUpdate()) { // UPDATE int contador = 0; foreach (UIElement ui in this.horarios.Children) { int row = System.Windows.Controls.Grid.GetRow(ui); int col = System.Windows.Controls.Grid.GetColumn(ui); if ((row == 0) && (col == 0 || col == 1 || col == 2)) { Label label = (Label)ui; } else { TextBox txt = (TextBox)ui; string textoCelda = txt.Text; if (row > 0 && col < 2) { if (contador == 0) { listHorariosLlegadaUpdate.Add(textoCelda); contador = 1; } else { listHorariosSalidaUpdate.Add(textoCelda); contador = 0; } } } } MySqlConnection con; for (int i = 0; i < (paradas.Count); i++) { con = conexionDB.ObtenerConexion(); Viaje ciudad = ViajeFacade.buscarPorId(this.id_viaje); Parada paradaCiudad = ParadaFacade.buscarPorRecorridoCiudad(ciudad.recorrido, this.paradas[i]); string updateString = "UPDATE HORARIOS SET LLEGADA=?llegada, SALIDA=?salida WHERE VIAJE=?viaje AND PARADA=?parada"; MySqlCommand updateCommand = new MySqlCommand(updateString, con); updateCommand.Parameters.Add("?llegada", listHorariosLlegadaUpdate[i]); updateCommand.Parameters.Add("?salida", listHorariosSalidaUpdate[i]); updateCommand.Parameters.Add("?viaje", this.id_viaje); updateCommand.Parameters.Add("?parada", paradaCiudad.id); updateCommand.ExecuteNonQuery(); con.Close(); } MySqlConnection con2 = conexionDB.ObtenerConexion(); string updateDatosViajes = "UPDATE VIAJES_DIARIOS SET BUS=?bus, AUXILIAR=?auxiliar,CHOFER=?chofer WHERE VIAJE=?viaje"; MySqlCommand updateDatosCommand = new MySqlCommand(updateDatosViajes, con2); updateDatosCommand.Parameters.Add("?bus", comboBus.Text); updateDatosCommand.Parameters.Add("?auxiliar", obtenerRutPersonaByNombre(comboAuxiliar.Text, "AUXILIAR")); updateDatosCommand.Parameters.Add("?chofer", obtenerRutPersonaByNombre(comboChofer.Text, "CHOFER")); updateDatosCommand.Parameters.Add("?viaje", this.id_viaje); updateDatosCommand.ExecuteNonQuery(); con2.Close(); nuevoViajeDiario = new nuevoViaje(); nuevoViajeDiario.Show(); nuevoViajeDiario.saludo.Text = "Gracias por actualizar nuestros registros"; nuevoViajeDiario.textBlock1.Text = "Se ha actualizado correctamente el viaje en el sistema"; } }
private void button1_Click(object sender, RoutedEventArgs e) { if (validarIngresoViajeDiario()) { //listadoId.Clear(); cabecerasAgregarViajes(); this.gridAgregarViajes.Visibility = Visibility.Visible; Ciudad origen = CiudadFacade.buscarPorNombre(this.comboOrigen.SelectedItem.ToString()); Ciudad destino = CiudadFacade.buscarPorNombre(this.comboDestino.SelectedItem.ToString()); listadoId = RecorridoFacade.RecorridoByOrigenDestino(origen, destino); List <string> nombreIntermedios = new List <string>(); for (int z = 0; z < listadoId.Count; z++) { nombreIntermedios.Add(ParadaFacade.nombresIntermediosByRecorridos(listadoId[z].id)); } int largo = listadoId.Count - 1; this.gridAgregarViajes.ColumnDefinitions[0].Width = new System.Windows.GridLength(500); this.gridAgregarViajes.ColumnDefinitions[1].Width = new System.Windows.GridLength(80); for (int z = 0; z <= largo; z++) { this.gridAgregarViajes.RowDefinitions.Add(new RowDefinition()); this.gridAgregarViajes.RowDefinitions[z].Height = new System.Windows.GridLength(40); } this.gridAgregarViajes.RowDefinitions[gridAgregarViajes.RowDefinitions.Count - 1].Height = new System.Windows.GridLength(40); int contador = 0; TextBox texto; for (int row = 1; row < this.gridAgregarViajes.RowDefinitions.Count; row++) { for (int col = 0; col < this.gridAgregarViajes.ColumnDefinitions.Count; col++) { if (col == 0) { texto = new TextBox(); texto.Style = Resources["ItemTablaGuion"] as Style; texto.Text = nombreIntermedios[contador]; texto.SetValue(Grid.ColumnProperty, col); texto.SetValue(Grid.RowProperty, row); texto.IsReadOnly = true; this.gridAgregarViajes.Children.Add(texto); } if (col == 1) { BitmapImage btm = new BitmapImage(new Uri("/SmarTravel_Final;component/Images/crear.png", UriKind.Relative)); Image img = new Image(); img.Source = btm; img.Stretch = Stretch.Fill; img.Width = 50; img.Height = 30; Button bIngreso = new Button(); bIngreso.Click += new RoutedEventHandler(bIngreso_Click); bIngreso.Content = img; bIngreso.Tag = Convert.ToString(contador); bIngreso.SetValue(Grid.ColumnProperty, col); bIngreso.SetValue(Grid.RowProperty, row); this.gridAgregarViajes.Children.Add(bIngreso); } } contador++; } } }