예제 #1
0
        private void tsbEditar_Click(object sender, EventArgs e)
        {
            if (dgvDatos.SelectedRows.Count == 0)
            {
                return;
            }

            DataGridViewRow  r                = dgvDatos.SelectedRows[0];
            CategoriaListDto categoriaDto     = (CategoriaListDto)r.Tag;
            CategoriaListDto categoriaDtoAux  = categoriaDto.Clone() as CategoriaListDto;
            FrmCategoriasAE  frm              = new FrmCategoriasAE();
            CategoriaEditDto categoriaEditDto = _servicio.GetCategoriaPorId(categoriaDto.CategoriaId);

            frm.Text = "Editar Categoría";
            frm.SetCategoria(categoriaEditDto);
            DialogResult dr = frm.ShowDialog(this);

            if (dr == DialogResult.Cancel)
            {
                return;
            }

            try
            {
                categoriaEditDto = frm.GetCategoria();
                //Controlar repitencia

                if (!_servicio.Existe(categoriaEditDto))
                {
                    _servicio.Guardar(categoriaEditDto);
                    categoriaDto = new CategoriaListDto
                    {
                        CategoriaId     = categoriaEditDto.CategoriaId,
                        NombreCategoria = categoriaEditDto.NombreCategoria,
                    };
                    SetearFila(r, categoriaDto);
                    MessageBox.Show("Registro Agregado", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    SetearFila(r, categoriaDto);
                    MessageBox.Show("Registro ya existente", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception exception)
            {
                SetearFila(r, categoriaDtoAux);

                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #2
0
        private void GuardarButton_Click(object sender, EventArgs e)
        {
            if (ValidarDatos())
            {
                if (categoriaDto == null)
                {
                    categoriaDto = new CategoriaEditDto();
                }
                categoriaDto.NombreCategoria = CategoriaTextBox.Text;
                categoriaDto.Descripcion     = DescripcionTextBox.Text;

                DialogResult = DialogResult.OK;
            }
        }
예제 #3
0
 public void Guardar(CategoriaEditDto categoriaEditDto)
 {
     try
     {
         Categoria categoria = new Categoria
         {
             CategoriaId     = categoriaEditDto.CategoriaId,
             NombreCategoria = categoriaEditDto.NombreCategoria,
             Descripcion     = categoriaEditDto.Descripcion
         };
         _conexionBd  = new ConexionBd();
         _repositorio = new RepositorioCategorias(_conexionBd.AbrirConexion());
         _repositorio.Guardar(categoria);
         _conexionBd.CerrarConexion();
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }
예제 #4
0
 public bool Existe(CategoriaEditDto categoriaEditDto)
 {
     try
     {
         Categoria categoria = new Categoria
         {
             CategoriaId     = categoriaEditDto.CategoriaId,
             NombreCategoria = categoriaEditDto.NombreCategoria,
             Descripcion     = categoriaEditDto.Descripcion
         };
         _conexionBd  = new ConexionBd();
         _repositorio = new RepositorioCategorias(_conexionBd.AbrirConexion());
         var existe = _repositorio.Existe(categoria);
         _conexionBd.CerrarConexion();
         return(existe);
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }
예제 #5
0
        private void tsbNuevo_Click(object sender, EventArgs e)
        {
            FrmCategoriasAE frm = new FrmCategoriasAE();

            frm.Text = "Agregar Categoría";
            DialogResult dr = frm.ShowDialog(this);

            if (dr == DialogResult.OK)
            {
                try
                {
                    CategoriaEditDto categoriaEditDto = frm.GetCategoria();
                    //Controlar repitencia

                    if (!_servicio.Existe(categoriaEditDto))
                    {
                        _servicio.Guardar(categoriaEditDto);
                        CategoriaListDto categoriaListDto = new CategoriaListDto
                        {
                            CategoriaId     = categoriaEditDto.CategoriaId,
                            NombreCategoria = categoriaEditDto.NombreCategoria,
                        };
                        DataGridViewRow r = ConstruirFila();
                        SetearFila(r, categoriaListDto);
                        AgregarFila(r);
                        MessageBox.Show("Registro Agregado", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("Registro ya existente", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                catch (Exception exception)
                {
                    MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
예제 #6
0
        public CategoriaEditDto GetCategoriaPorId(int id)
        {
            CategoriaEditDto categoriaDto = null;

            try
            {
                string cadenaComando =
                    "SELECT CategoriaId, NombreCategoria, Descripcion FROM Categorias WHERE CategoriaId=@id";
                SqlCommand comando = new SqlCommand(cadenaComando, _sqlConnection);
                comando.Parameters.AddWithValue("@id", id);
                SqlDataReader reader = comando.ExecuteReader();
                if (reader.HasRows)
                {
                    reader.Read();
                    categoriaDto = ConstruirCategoriaEditDto(reader);
                }
                reader.Close();
                return(categoriaDto);
            }
            catch (Exception e)
            {
                throw new Exception("Error al intentar leer la categoría");
            }
        }
예제 #7
0
 public void SetCategoria(CategoriaEditDto categoriaEditDto)
 {
     categoriaDto = categoriaEditDto;
 }