public void Filtrar(ref Cls_Privilegios_Roles_DAL objDAL)
        {
            BDServiceClient Obj_BDService = new BDServiceClient();

            try
            {
                string error = "";
                Crear_Parametros(ref objDAL);

                objDAL.dtParametros.Rows.Add("@Filtro", "1", objDAL.iFiltro);

                objDAL.dtTabla = Obj_BDService.FiltrarDatos("sp_Filtrar_Privilegios_Roles", "Privilegios_Roles", objDAL.dtParametros, ref error);

                if (error == string.Empty && objDAL.dtTabla != null)
                {
                    objDAL.sError = string.Empty;
                }
                else
                {
                    objDAL.sError = error;
                }
            }
            catch (Exception ex)
            {
                objDAL.sError = ex.Message.ToString();
            }
            finally
            {
                Obj_BDService.Close();
            }
        }
        protected void btnAgregarPrivilegio_Click(object sender, EventArgs e)
        {
            Cls_Privilegios_Roles_BLL objBLL = new Cls_Privilegios_Roles_BLL();
            Cls_Privilegios_Roles_DAL objDAL = new Cls_Privilegios_Roles_DAL();

            bool existRecord = false;

            for (int i = 0; i < gdvPrivilegios.Rows.Count; i++)
            {
                String Privilegio = gdvPrivilegios.Rows[i].Cells[2].Text;

                if (cmbPrivilegios.SelectedItem.Text == Privilegio)
                {
                    existRecord = true;
                    break;
                }
            }

            if (!existRecord)
            {
                objDAL.iRol        = Convert.ToInt16(txtIdRol.Value.ToString().Trim());
                objDAL.iPrivilegio = Convert.ToInt16(cmbPrivilegios.SelectedValue.ToString().Trim());

                objBLL.Insertar(ref objDAL);

                CargarPrivilegios(objDAL.iRol);
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "ShowPopup", "alert('El privilegio ya existe en el Rol');", true);
            }
        }
        public void Eliminar(ref Cls_Privilegios_Roles_DAL objDAL)
        {
            BDServiceClient Obj_BDService = new BDServiceClient();

            string vError = string.Empty;

            Crear_Parametros(ref objDAL);
            objDAL.dtParametros.Rows.Add("@idPrivilegioRol", "1", objDAL.iPrivilegioRol);

            Obj_BDService.EliminarDato("sp_Eliminar_Privilegio_Rol", "Privilegios_Roles", objDAL.dtParametros, ref vError);
            objDAL.sError = vError;
        }
        public void Insertar(ref Cls_Privilegios_Roles_DAL objDAL)
        {
            BDServiceClient Obj_BDService = new BDServiceClient();

            string vError  = string.Empty;
            char   vAccion = 'I';

            Crear_Parametros(ref objDAL);

            objDAL.dtParametros.Rows.Add("@idRol", "1", objDAL.iRol);
            objDAL.dtParametros.Rows.Add("@IdPrivilegio", "1", objDAL.iPrivilegio);

            Obj_BDService.InsertarDatoSinIdentity("sp_Insertar_Privilegio_Rol", "Privilegios_Roles", objDAL.dtParametros, ref vAccion, ref vError);
            objDAL.sError = vError;
        }
        public void Crear_Parametros(ref Cls_Privilegios_Roles_DAL objDAL)
        {
            try
            {
                objDAL.dtParametros = new DataTable("Parametros");
                objDAL.dtParametros.Columns.Add("Nombre");
                objDAL.dtParametros.Columns.Add("Tipo");
                objDAL.dtParametros.Columns.Add("Valor");

                objDAL.sError = string.Empty;
            }
            catch (Exception Error)
            {
                objDAL.sError       = Error.Message.ToString();
                objDAL.dtParametros = null;
            }
        }
        private void CargarPrivilegios(int idRol)
        {
            Cls_Privilegios_Roles_BLL objBLL = new Cls_Privilegios_Roles_BLL();
            Cls_Privilegios_Roles_DAL objDAL = new Cls_Privilegios_Roles_DAL();

            objDAL.iFiltro = idRol;

            gdvPrivilegios.DataSource = null;
            gdvPrivilegios.DataBind();

            objBLL.Filtrar(ref objDAL);
            if (objDAL.sError == string.Empty)
            {
                gdvPrivilegios.SelectedIndex = -1;
                gdvPrivilegios.DataSource    = objDAL.dtTabla;
                gdvPrivilegios.DataBind();
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "ShowPopup", "alert('Se presento un problema a la hora de cargar el los privilegios');", true);
            }
        }
        protected void gdvPrivilegios_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "Borrar")
            {
                int         index           = Convert.ToInt32(e.CommandArgument);
                GridViewRow row             = gdvPrivilegios.Rows[index];
                String      idPrivilegioRol = gdvPrivilegios.Rows[index].Cells[1].Text;

                Cls_Privilegios_Roles_BLL objBLL = new Cls_Privilegios_Roles_BLL();
                Cls_Privilegios_Roles_DAL objDAL = new Cls_Privilegios_Roles_DAL();

                objDAL.iPrivilegioRol = Convert.ToInt32(idPrivilegioRol.Trim());
                objBLL.Eliminar(ref objDAL);

                if (!string.IsNullOrEmpty(objDAL.sError))
                {
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "ShowPopup", "alert('Se presento un problema a la hora de eliminar el registro');", true);
                }
                else
                {
                    CargarPrivilegios(Convert.ToInt16(txtIdRol.Value.ToString().Trim()));
                }
            }
        }