public int Actualizar(TipoProductoInfo tipoProductoInfo)
        {
            int resultado;

            try
            {
                using (var oConnection = new SqlConnection(HelperAccesoDatos.GetCadenaConexion()))
                {
                    var sqlComando = new SqlCommand {
                        Connection = oConnection, CommandText = "ActualizarTipoProducto", CommandType = CommandType.StoredProcedure
                    };

                    sqlComando.Parameters.Add("TipoProductoId", SqlDbType.Int).Value        = tipoProductoInfo.TipoProductoId;
                    sqlComando.Parameters.Add("Nombre", SqlDbType.VarChar).Value            = tipoProductoInfo.Nombre;
                    sqlComando.Parameters.Add("Descripcion", SqlDbType.VarChar).Value       = tipoProductoInfo.Descripcion;
                    sqlComando.Parameters.Add("Nivel", SqlDbType.Int).Value                 = tipoProductoInfo.Nivel;
                    sqlComando.Parameters.Add("TipoProductoPadreId", SqlDbType.Int).Value   = tipoProductoInfo.TipoProductoPadreId > 0 ? tipoProductoInfo.TipoProductoPadreId : (object)System.DBNull.Value;
                    sqlComando.Parameters.Add("Activo", SqlDbType.Int).Value                = tipoProductoInfo.Activo;
                    sqlComando.Parameters.Add("UsuarioModificacionId", SqlDbType.Int).Value = tipoProductoInfo.UsuarioModificacionId;

                    oConnection.Open();
                    resultado = Convert.ToInt32(sqlComando.ExecuteScalar());

                    oConnection.Close();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(resultado);
        }
        public void btnGuardarUsuario_Click(object sender, EventArgs e)
        {
            var script    = new StringBuilder(String.Empty);
            var usuarioId = Convert.ToInt32(hdnUsuarioId.Value);
            var mensaje   = String.Empty;

            #region Datos Usuario
            var usuarioInfo = new TipoProductoInfo();
            usuarioInfo.TipoProductoId = Convert.ToInt32(hdnUsuarioId.Value);
            usuarioInfo.Nombre         = txtNombre.Text.Trim();
            usuarioInfo.Descripcion    = txtDescripcion.Text.Trim();
            usuarioInfo.Activo         = chkActivo.Checked ? 1 : 0;
            usuarioInfo.Nivel          = Constantes.PrimerNivelProducto;


            #endregion

            if (usuarioId.Equals(0))
            {
                usuarioId = new Negocio.TipoProducto().Insertar(usuarioInfo);
                if (usuarioId > 0)
                {
                    script.Append("document.getElementById('hdnUsuarioId').value = " + usuarioId + ";");
                    mensaje = "Se registró el Tipo producto correctamente";
                }
                else
                {
                    mensaje = "Ya existe un producto registrado con el nombre Producto: " + txtNombre.Text.Trim();
                }
            }
            else
            {
                usuarioId = new Negocio.TipoProducto().Actualizar(usuarioInfo);
                if (usuarioId > 0)
                {
                    script.Append("document.getElementById('hdnUsuarioId').value = " + usuarioId + ";");
                    mensaje = "Se actualizó el Tipo producto correctamente";
                }
                else
                {
                    mensaje = "Ya existe un producto registrado con el nombre Producto: " + txtNombre.Text.Trim();
                }
            }

            script.Append("MostrarMensaje('" + mensaje + "');");
            script.Append("LimpiarUsuario();");
            script.Append("var modalDialog = $find('mpeUsuario'); modalDialog.hide();");
            CargarDatos();
            RegistrarScript(script.ToString(), "GuardarUsuario");
        }
        public int Actualizar(TipoProductoInfo clienteInfo)
        {
            int resultado = 0;

            try
            {
                resultado = _tipoProductoAccesoDatos.Actualizar(clienteInfo);
            }
            catch (Exception ex)
            {
                bool rethrow = ExceptionPolicy.HandleException(ex, Constantes.ExcepcionPoliticaLogicaNegocio);
                if (rethrow)
                {
                    throw;
                }
            }
            return(resultado);
        }
        private static TipoProductoInfo CargarSubTipoProductoInfo(IDataReader dr)
        {
            int colCount = dr.FieldCount;
            var values   = new object[colCount];

            #region Indices
            int indTipoProductoId      = dr.GetOrdinal("TipoProductoId");
            int indNombre              = dr.GetOrdinal("Nombre");
            int indDescripcion         = dr.GetOrdinal("Descripcion");
            int indActivo              = dr.GetOrdinal("Activo");
            int indTipoProducto        = dr.GetOrdinal("TipoProducto");
            int indTipoProductoPadreId = dr.GetOrdinal("TipoProductoPadreId");
            ////int indFechaCreacion = dr.GetOrdinal("FechaCreacion");
            //int indUsuarioModificacionId = dr.GetOrdinal("UsuarioModificacionId");
            //int indFechaModificacion = dr.GetOrdinal("FechaModificacion");
            int indNumeroFila = dr.GetOrdinal("NumeroFila");
            int indTotalFilas = dr.GetOrdinal("TotalFilas");
            #endregion

            var tipoProductoInfo = new TipoProductoInfo();
            dr.GetValues(values);

            #region Campos
            tipoProductoInfo.TipoProductoId = Convert.ToInt32(values[indTipoProductoId]);
            tipoProductoInfo.Nombre         = Convert.ToString(values[indNombre]);
            tipoProductoInfo.Descripcion    = Convert.ToString(values[indDescripcion]);

            tipoProductoInfo.Activo       = Convert.ToInt32(values[indActivo]);
            tipoProductoInfo.TipoProducto = Convert.ToString(values[indTipoProducto]);
            //tipoProductoInfo.FechaCreacion = Convert.ToDateTime(values[indFechaCreacion]);
            //tipoProductoInfo.UsuarioModificacionId = Convert.ToInt32(values[indUsuarioModificacionId]);
            //tipoProductoInfo.FechaModificacion = Convert.ToDateTime(values[indFechaModificacion]);
            tipoProductoInfo.NumeroFila = Convert.ToInt32(values[indNumeroFila]);
            tipoProductoInfo.TotalFilas = Convert.ToInt32(values[indTotalFilas]);
            if (values[indTipoProductoPadreId] != DBNull.Value)
            {
                tipoProductoInfo.TipoProductoPadreId = Convert.ToInt32(values[indTipoProductoPadreId]);
            }
            #endregion

            return(tipoProductoInfo);
        }