/*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(); } } } } } }