public TramoView(Tramo tramo) { InitializeComponent(); controller = new TramoController(this, tramo); controller.setearDatosIniciales(); }
// Agregemos el tramo seleccionado al final del dgvTramosSeleccionados donde vamos armando el recorrido con los diferentes tramos seleccionados public void agregarTramo(Tramo tramoSeleccionado) { this.dgvTramosSeleccionados.Rows.Add( tramoSeleccionado.getId(), tramoSeleccionado.getPuertoInicio(), tramoSeleccionado.getPuertoFin(), tramoSeleccionado.getPrecio()); }
public ComprarPasajeController(ComprarPasajeVista comprarPasajeVista) { // TODO: Complete member initialization this.unaComprarPasajeVista = comprarPasajeVista; this.unTramo = new Tramo(); }
public void SaveTramoxRecorrido(Tramo tramo, int recorridoId, int orden) { var query = ArmarSentenciaSP("P_Guardar_Tramo_x_Recorrido", new[] { GetParam(tramo.Id), GetParam(recorridoId), GetParam(orden) }); Connection.ExecuteNoQuery(query); }
/*private void dgv_fecha_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) * { * string columnName = this.dgv_fecha.Columns[e.ColumnIndex].Name; * * * if (columnName.Equals("colFecha")) * { * // Check if the input is empty * if (string.IsNullOrEmpty(e.FormattedValue.ToString())) * { * this.dgv_fecha.Rows[e.RowIndex].ErrorText = "La columna Fecha está vacía"; * e.Cancel = true; * } * else * { * // Check if the input format is correct * Regex datePattern = new Regex("^[0-9]{2}([/][0-9]{2}([/][0-9]{4}))?$"); * if (!datePattern.IsMatch(e.FormattedValue.ToString())) * { * this.dgv_fecha.Rows[e.RowIndex].ErrorText = "Formato incorrecto: \"DD/MM/AAAA\""; * e.Cancel = true; * } * } * } * * // Check for the column to validate * if (columnName.Equals("colHora")) * { * // Check if the input is empty * if (string.IsNullOrEmpty(e.FormattedValue.ToString())) * { * this.dgv_fecha.Rows[e.RowIndex].ErrorText = "La columna Hora está vacía"; * e.Cancel = true; * } * else * { * // Check if the input format is correct * Regex datePattern = new Regex("^[0-9]{2}([:][0-9]{2})?$"); * if (!datePattern.IsMatch(e.FormattedValue.ToString())) * { * this.dgv_fecha.Rows[e.RowIndex].ErrorText = "Formato incorrecto: \"HH:MM\""; * e.Cancel = true; * } * } * } * }*/ /*private void dgv_fecha_CellEndEdit(object sender, DataGridViewCellEventArgs e) * { * this.dgv_fecha.Rows[e.RowIndex].ErrorText = string.Empty; * }*/ /*private void dgv_ubicacion_CellContentClick(object sender, DataGridViewCellEventArgs e) * { * * }*/ private void ejecutar() { RegexUtilities util = new RegexUtilities(); if (ValidarCamposVacios()) { MessageBox.Show("Debe completar todos los campos"); } else if (false) //ValidarTipoUbicacionVacio() { } else if (false) //ValidaPisoTipo() { MessageBox.Show("Piso y tipo de cabina repetido"); } else { if ((this.IDRecorrido == null || this.IDRecorrido == 0)) { //Validar ID if (false) { MessageBox.Show("La identificación ya existe"); } else { //Crear recorrido Recorrido recorrido = new Recorrido(); List <Tramo> parametros = new List <Tramo>(); ComboboxItem item = new ComboboxItem(); item = (ComboboxItem)cmb_puertoSalida.SelectedItem; Puerto pue_salida = (Puerto)item.Value; recorrido.rec_pue_id_desde = pue_salida.id; item = (ComboboxItem)cmb_puertoDestino.SelectedItem; Puerto pue_destino = (Puerto)item.Value; recorrido.rec_pue_id_hasta = pue_destino.id; RecorridoFunc.CrearRecorrido(recorrido); for (int l = 0; l < this.dgv_tramos.Rows.Count - 1; l++) { Tramo tramo = new Tramo(); tramo.id = Convert.ToInt32(dgv_tramos.Rows[3].Cells["tra_id"].Value); tramo.salida = Convert.ToInt32(dgv_tramos.Rows[0].Cells["tra_desde"].Value); tramo.destino = Convert.ToInt32(dgv_tramos.Rows[l].Cells["tra_hasta"].Value); tramo.precio = Convert.ToInt32(dgv_tramos.Rows[2].Cells["tra_precio_base"].Value); parametros.Add(tramo); RecorridoFunc.InsertarRecorridoTramo(recorrido.rec_id, parametros); } MessageBox.Show("Recorrido creado"); this.Close(); } } else { //Modificar crucero Recorrido recorrido = new Recorrido(); List <Tramo> tramosList = new List <Tramo>(); ComboboxItem item = new ComboboxItem(); item = (ComboboxItem)cmb_puertoSalida.SelectedItem; Puerto pue_salida = (Puerto)item.Value; recorrido.rec_pue_id_desde = pue_salida.id; item = (ComboboxItem)cmb_puertoDestino.SelectedItem; Puerto pue_destino = (Puerto)item.Value; recorrido.rec_pue_id_hasta = pue_destino.id; recorrido.rec_estado = true; RecorridoFunc.ModificarRecorrido(recorrido); //Tramos del Recorrido Int32 length = tramosList.Count; for (int l = 0; l < length; l++) { Tramo tramo = new Tramo(); tramo.id = Convert.ToInt32(dgv_tramos.Rows[3].Cells["tra_id"].Value); tramo.salida = Convert.ToInt32(dgv_tramos.Rows[0].Cells["tra_desde"].Value); tramo.destino = Convert.ToInt32(dgv_tramos.Rows[l].Cells["tra_hasta"].Value); tramo.precio = Convert.ToInt32(dgv_tramos.Rows[2].Cells["tra_precio_base"].Value); tramosList.Add(tramo); RecorridoFunc.ModificarRecorridoTramo(recorrido.rec_id, tramosList); } for (int l2 = length; l2 < this.dgv_tramos.Rows.Count - 1; l2++) { Tramo tramo = new Tramo(); tramo.id = Convert.ToInt32(dgv_tramos.Rows[3].Cells["tra_id"].Value); tramo.salida = Convert.ToInt32(dgv_tramos.Rows[0].Cells["tra_desde"].Value); tramo.destino = Convert.ToInt32(dgv_tramos.Rows[1].Cells["tra_hasta"].Value); tramo.precio = Convert.ToInt32(dgv_tramos.Rows[2].Cells["tra_precio_base"].Value); tramosList.Add(tramo); RecorridoFunc.ModificarRecorridoTramo(recorrido.rec_id, tramosList); } MessageBox.Show("Recorrido modificado"); this.Close(); } } }
private void ejecutar() { RegexUtilities util = new RegexUtilities(); if (ValidarCamposVacios()) { if (ValidarTramos()) { if (chequearSalidaYDestino()) { if (validarPrecioTramo()) { if (!this.esModificar) { if (String.IsNullOrEmpty(txt_id.Text.Trim())) { MessageBox.Show("Completar codigo recorrido"); } else if (!RecorridoFunc.EsValidoIdRecorrido(txt_id.Text.Trim())) { MessageBox.Show("El codigo recorrido ya existe"); } else { //Crear recorrido Recorrido recorrido = new Recorrido(); List <Tramo> tramosList = new List <Tramo>(); int cantTramos = this.dgv_tramos.Rows.Count; for (int l = 0; l < cantTramos; l++) { Tramo tramo = obtenerTramo(l); int tra_id = TramoFunc.ValidarTramo(tramo); tramo.id = tra_id; if (l == 0) { recorrido.rec_pue_id_desde = tramo.salida_id; } if (l + 1 == cantTramos) { recorrido.rec_pue_id_hasta = tramo.destino_id; } tramosList.Add(tramo); } recorrido.rec_id = txt_id.Text.Trim(); RecorridoFunc.CrearRecorrido(recorrido); RecorridoFunc.InsertarRecorridoTramo(recorrido.rec_id, tramosList); MessageBox.Show("Recorrido creado"); this.Close(); } } else { //Modificar recorrido List <Tramo> tramosList = new List <Tramo>(); //Tramos del Recorrido int cantTramos = this.dgv_tramos.Rows.Count; for (int l = 0; l < cantTramos; l++) { Tramo tramo = obtenerTramo(l); int tra_id = TramoFunc.ValidarTramo(tramo); tramo.id = tra_id; tramosList.Add(tramo); if (l == 0) { this.recorridoModificado.rec_pue_id_desde = tramo.salida_id; } if (l + 1 == cantTramos) { this.recorridoModificado.rec_pue_id_hasta = tramo.destino_id; } } RecorridoFunc.BorrarRecorridoTramo(this.recorridoModificado.rec_id, this.recorridoTramos); RecorridoFunc.ModificarRecorrido(this.recorridoModificado); RecorridoFunc.ModificarRecorridoTramo(this.recorridoModificado.rec_id, tramosList); MessageBox.Show("Recorrido modificado"); this.Close(); } } } } } }
public FormAmRecorrido(String IDRecorrido, FormRecorrido fr) { InitializeComponent(); this.IDRecorrido = IDRecorrido; dgv_tramos.EditingControlShowing += dgv_tramos_EditingControlShowing; dgv_tramos.CellValidating += dgv_tramos_CellValidating; dgv_tramos.CellEndEdit += dgv_tramos_CellEndEdit; dgv_tramos.AllowUserToAddRows = false; txt_id.ReadOnly = true; dgv_tramos.Columns["colId"].Visible = false; if (!String.IsNullOrEmpty(IDRecorrido)) { this.esModificar = true; //Modificar Recorrido recorrido = new Recorrido(); //Obtener recorrido SqlDataReader reader = RecorridoFunc.ObtenerRecorrido(IDRecorrido); recorrido = RecorridoFunc.ObtenerRecorridoDesdeUnReader(reader); //Llenar textos txt_id.Text = recorrido.rec_id.ToString(); //cmb_puertoDestino.SelectedIndex = cmb_puertoDestino.SelectedIndex.Equals(recorrido.rec_pue_desde); //cmb_puertoSalida.SelectedIndex = PuertoFunc.ObtenerNombre(recorrido.rec_pue_hasta); DataTable tramo = TramoFunc.ObtenerTramos(this.IDRecorrido); //Se carga combo Tipo Cabina de la fila dgv_tramos.Rows.Add(); CargarComboPuertoSalida(); CargarComboPuertoDestino(); this.cantTramos = tramo.Rows.Count; //Se agragan las filas necesarias for (Int32 j = 0; j < this.cantTramos; j++) { DataGridViewRow rowTram = (DataGridViewRow)dgv_tramos.Rows[0].Clone(); dgv_tramos.Rows.Add(rowTram); } Queue <Tramo> tramosList = new Queue <Tramo>(); //Se agregan los datos en las filas Tramo tramo_inicial = new Tramo(); int cont; for (cont = 0; true; cont++) { tramo_inicial.salida = tramo.Rows[cont]["tra_desde"].ToString().Trim(); tramo_inicial.salida_id = Convert.ToInt32(PuertoFunc.ObtenerPuerto(tramo_inicial.salida).Rows[0]["pue_id"]); if (tramo_inicial.salida_id == recorrido.rec_pue_id_desde) { tramo_inicial.id = Convert.ToInt32(tramo.Rows[cont]["tra_id"]); tramo_inicial.destino = tramo.Rows[cont]["tra_hasta"].ToString().Trim(); tramo_inicial.precio = Convert.ToDecimal(tramo.Rows[cont]["tra_precio_base"]); tramosList.Enqueue(tramo_inicial); break; } } for (int i = 0; i < this.cantTramos; i++) { if (i == cont) { continue; } Tramo nuevo_tram = new Tramo(); //dgv_tramos.Rows[i].Cells[0].Text = i.ToString(); nuevo_tram.id = Convert.ToInt32(tramo.Rows[i]["tra_id"]); nuevo_tram.salida = tramo.Rows[i]["tra_desde"].ToString().Trim(); nuevo_tram.destino = tramo.Rows[i]["tra_hasta"].ToString().Trim(); nuevo_tram.precio = Convert.ToDecimal(tramo.Rows[i]["tra_precio_base"]); tramosList.Enqueue(nuevo_tram); } //this.recorridoTramos = tramosList; Tramo primer_tramo = tramosList.Dequeue(); dgv_tramos.Rows[0].Cells["colId"].Value = primer_tramo.id.ToString(); dgv_tramos.Rows[0].Cells[0].Value = primer_tramo.salida.ToString().Trim(); dgv_tramos.Rows[0].Cells[1].Value = primer_tramo.destino.ToString().Trim(); dgv_tramos.Rows[0].Cells[2].Value = primer_tramo.precio.ToString(); for (int j = 1; j < this.cantTramos;) { Tramo nue_tramo = tramosList.Dequeue(); if (String.Equals(Convert.ToString(dgv_tramos.Rows[j - 1].Cells[1].Value), nue_tramo.salida)) { dgv_tramos.Rows[j].Cells["colId"].Value = nue_tramo.id.ToString(); dgv_tramos.Rows[j].Cells[0].Value = nue_tramo.salida.ToString().Trim(); dgv_tramos.Rows[j].Cells[1].Value = nue_tramo.destino.ToString().Trim(); dgv_tramos.Rows[j].Cells[2].Value = nue_tramo.precio.ToString(); j++; } else { tramosList.Enqueue(nue_tramo); } } for (int j = 0; j < this.cantTramos; j++) { Tramo nue_tramo = new Tramo(); nue_tramo.id = Convert.ToInt32(dgv_tramos.Rows[j].Cells["colId"].Value); this.recorridoTramos.Enqueue(nue_tramo); } this.recorridoModificado.rec_id = recorrido.rec_id; this.recorridoModificado.rec_pue_id_desde = recorrido.rec_pue_id_desde; this.recorridoModificado.rec_pue_id_hasta = recorrido.rec_pue_id_hasta; this.recorridoModificado.rec_estado = recorrido.rec_estado; //MessageBox.Show(String.Format("Cantidad de tramos {0}", recorridoTramos.Count.ToString())); //Dejar identificación como grisado DataTable pue_desde, pue_hasta; pue_desde = PuertoFunc.ObtenerPuerto((int)recorrido.rec_pue_id_desde); pue_hasta = PuertoFunc.ObtenerPuerto((int)recorrido.rec_pue_id_hasta); dgv_tramos.Rows.RemoveAt(this.cantTramos); numericTextBox1.Text = pue_desde.Rows[0]["pue_nombre"].ToString(); numericTextBox1.ReadOnly = true; numericTextBox2.Text = pue_hasta.Rows[0]["pue_nombre"].ToString(); numericTextBox2.ReadOnly = true; txt_id.ReadOnly = true; } else { this.esModificar = false; txt_id.Text = ""; txt_id.ReadOnly = false; numericTextBox1.ReadOnly = true; numericTextBox2.ReadOnly = true; dgv_tramos.Rows.Add(); //Cargar Puerto Desde CargarComboPuertoSalida(); //Cargar Puerto Hasta CargarComboPuertoDestino(); } }