Пример #1
0
        public static List<Ciudad> ObtenerTodasPorParametro(CiudadFiltros filtros)
        {
            //Obtengo la lista de ciudades que cumplen ciertos filtros (busqueda exacta)
            var param = new List<SPParameter>
                {
                    new SPParameter("Nombre", filtros.Nombre ?? (object)DBNull.Value)
                };

            var sp = new StoreProcedure(DBQueries.Ciudad.SPObtenerCiudadesPorParametros, param);

            return sp.ExecuteReader<Ciudad>();
        }
        private void LblGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                #region Validaciones

                var excepcion = string.Empty;

                if (ValidadorDeTipos.IsEmpty(TxtNombreCiudad.Text))
                    excepcion = "El nombre ingresado no puede ser vacío.";

                if (!ValidadorDeTipos.IsEmpty(excepcion))
                    throw new Exception(excepcion);

                #endregion

                if (modoInsertar)
                {
                    var filters = new CiudadFiltros { Nombre = TxtNombreCiudad.Text };
                    //Valido que no exista una ciudad con la descripcion informada
                    if (CiudadPersistencia.ObtenerTodasPorParametro(filters).Count > 0)
                    {
                        throw new Exception("Ya existe una ciudad con la descripcion informada.");
                    }
                    #region Inserto la nueva ciudad

                    var ciudadNueva = new Ciudad();
                    ciudadNueva.Nombre = TxtNombreCiudad.Text;

                    var dialogAnswer = MessageBox.Show("Esta seguro que quiere insertar la nueva ciudad?", "Atencion", MessageBoxButtons.YesNo);
                    if (dialogAnswer == DialogResult.Yes)
                    {
                        if (CiudadPersistencia.InsertarCiudad(ciudadNueva) == 1)
                        {
                            MessageBox.Show("Se inserto satisfactoriamente la nueva Ciudad", "Atencion");
                            TxtNombreCiudad.Text = string.Empty;
                            accionTerminada = true;
                            Close();
                        }
                    }

                    #endregion
                }
                else
                {
                    #region Modifico una ciudad existente

                    ciudadAModificar.Nombre = TxtNombreCiudad.Text;
                    var dialogAnswer = MessageBox.Show(string.Format("Esta seguro que quiere modificar la ciudad {0}?", ciudadAModificar.Nombre), "Atencion", MessageBoxButtons.YesNo);
                    if (dialogAnswer == DialogResult.Yes)
                    {
                        //Modifico exitosamente si la cantidad de registros afectados es 1
                        if (CiudadPersistencia.ActualizarCiudad(ciudadAModificar) == 1)
                        {
                            MessageBox.Show("Se modifico satisfactoriamente la ciudad", "Atencion");
                            TxtNombreCiudad.Text = string.Empty;
                            accionTerminada = true;
                            Close();
                        }
                    }

                    #endregion
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Atención");
            }
        }
Пример #3
0
        private void LblBuscar_Click(object sender, EventArgs e)
        {
            try
            {
                #region Validations

                var filtros = false;
                var exceptionMessage = string.Empty;

                if (!ValidadorDeTipos.IsEmpty(TxtNombre.Text))
                    filtros = true;

                if (!filtros)
                    exceptionMessage = "No se puede realizar la busqueda ya que no se informó ningún filtro";

                if (!ValidadorDeTipos.IsEmpty(exceptionMessage))
                    throw new Exception(exceptionMessage);

                #endregion

                //Armo el objeto que representa a los filtros a partir de los valores de los controles
                var filtro = new CiudadFiltros
                {
                    Nombre = (!ValidadorDeTipos.IsEmpty(TxtNombre.Text)) ? TxtNombre.Text : null,
                };

                var ciudades = new List<Ciudad>();
                if (ChkBusqueda.Checked) ciudades = CiudadPersistencia.ObtenerTodasPorParametro(filtro);
                else ciudades = CiudadPersistencia.ObtenerTodosPorParametroComo(filtro);

                if (ciudades == null || ciudades.Count == 0)
                {
                    LimpiarFiltros();
                    ActualizarPantalla(null);
                    throw new Exception("No se encontraron ciudades según los filtros informados.");
                }

                //Cargo la grilla a partir de los registros obtenidos en la busqueda
                ActualizarPantalla(ciudades);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Atención");
            }
        }