예제 #1
0
        private void IniciarFormulario()
        {
            dgv_listado.DataSource = RecorridoFunc.ListarRecorridosExistentes(null, null, null).Tables[0];

            CargarComboPuertoSalida();
            CargarComboPuertoDestino();
            //dgv_listado.Columns["id"].Visible = false;
        }
예제 #2
0
        private void btn_limpiar_Click(object sender, EventArgs e)
        {
            txt_id.Text = "";
            cmb_puertoDestino.Items.Clear();
            cmb_puertoSalida.Items.Clear();

            CargarComboPuertoDestino();
            CargarComboPuertoSalida();

            dgv_listado.DataSource = null;

            dgv_listado.Rows.Clear();
            dgv_listado.DataSource = RecorridoFunc.ListarRecorridosExistentes(null, null, null).Tables[0];
            //txt_modelo.Text = "";
        }
예제 #3
0
 private void btEliminar_Click(object sender, EventArgs e)
 {
     if (!Convert.ToBoolean(dgv_listado.CurrentRow.Cells[4].Value))
     {
         MessageBox.Show("El recorrido ya está deshabilitado");
     }
     else
     {
         if (ConfirmarBaja())
         {
             String IDRecorrido = dgv_listado.CurrentRow.Cells[0].Value.ToString();
             RecorridoFunc.DarDeBajaUnRecorrido(IDRecorrido);
             dgv_listado.CurrentRow.Cells[4].Value = false;
             MessageBox.Show("El Recorrido ha sido dado de baja correctamente.");
             IniciarFormulario();
         }
     }
 }
예제 #4
0
        private void btn_buscar_Click(object sender, EventArgs e)
        {
            RegexUtilities util = new RegexUtilities();

            Puerto       pue_desde = new Puerto();
            Puerto       pue_hasta = new Puerto();
            ComboboxItem item      = new ComboboxItem();

            if (cmb_puertoDestino.SelectedItem != null)
            {
                item      = (ComboboxItem)cmb_puertoDestino.SelectedItem;
                pue_hasta = (Puerto)item.Value;
            }
            if (cmb_puertoSalida.SelectedItem != null)
            {
                item      = (ComboboxItem)cmb_puertoSalida.SelectedItem;
                pue_desde = (Puerto)item.Value;
            }

            dgv_listado.DataSource = RecorridoFunc.ListarRecorridosExistentes(txt_id.Text.Trim()
                                                                              , pue_desde.id
                                                                              , pue_hasta.id).Tables[0];
        }
예제 #5
0
        /*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();
                }
            }
        }
예제 #6
0
        public FormAmRecorrido(int 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;
            //Cargar Puerto Desde
            CargarComboPuertoSalida();
            //Cargar Puerto Hasta
            CargarComboPuertoDestino();

            if (IDRecorrido != null || IDRecorrido != 0)
            {
                //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 = RecorridoFunc.ObtenerTramos(this.IDRecorrido);

                //Se carga combo Tipo Cabina de la fila
                //CargarComboTipoCabina();

                this.cantTramos = tramo.Rows.Count;
                //Se agragan las filas necesarias
                for (Int32 j = 0; j < tramo.Rows.Count; j++)
                {
                    DataGridViewRow rowTram = (DataGridViewRow)dgv_tramos.Rows[0].Clone();
                    dgv_tramos.Rows.Add(rowTram);
                }


                //Se agregan los datos en las filas
                for (Int32 i = 0; i < tramo.Rows.Count; i++)
                {
                    dgv_tramos.Rows[i].Cells[0].Value = tramo.Rows[i]["tra_desde"].ToString().Trim();
                    dgv_tramos.Rows[i].Cells[1].Value = tramo.Rows[i]["tra_hasta"].ToString().Trim();
                    dgv_tramos.Rows[i].Cells[2].Value = tramo.Rows[i]["tra_precio_base"].ToString();
                    dgv_tramos.Rows[i].Cells[3].Value = tramo.Rows[i]["tra_id"].ToString();
                }

                this.recorridoModificado.rec_id        = recorrido.rec_id;
                this.recorridoModificado.rec_pue_desde = recorrido.rec_pue_desde.Trim();
                this.recorridoModificado.rec_pue_hasta = recorrido.rec_pue_hasta.Trim();
                this.recorridoModificado.rec_estado    = recorrido.rec_estado;

                //Dejar identificación como grisado
                txt_id.ReadOnly = true;
            }
            else
            {
                txt_id.Text = "00000000";
            }
        }
예제 #7
0
        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();
                            }
                        }
                    }
                }
            }
        }
예제 #8
0
        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();
            }
        }