Beispiel #1
0
        /// <summary>
        ///右侧分组权限绑定,并显示对应角色有哪些权限
        /// 修改人:金协民 2015年7月29日
        /// </summary>
        private void BindGrid2()
        {
            var roleId = GetSelectedDataKeyID(Grid1);

            if (string.IsNullOrEmpty(roleId))
            {
                Grid2.DataSource = null;
                Grid2.DataBind();
            }
            else
            {
                // 当前选中角色拥有的权限列表
                _currentRolePowers.Clear();
                List <T_ROLES_POWERS> T_ADMIN_ROLE_POWER_LIST = new List <T_ROLES_POWERS>();
                var query = new DapperExQuery <T_ROLES_POWERS>().AndWhere(n => n.R_CODE, OperationMethod.Equal, roleId);
                //拿到角色对应的权限,标记为选中
                T_ADMIN_ROLE_POWER_LIST = T_ROLES_POWERS_BLL.GetAllList(query);
                if (T_ADMIN_ROLE_POWER_LIST != null)
                {
                    foreach (var power in T_ADMIN_ROLE_POWER_LIST)
                    {
                        var      powersId = power.P_CODE;
                        var      query1   = new DapperExQuery <T_POWERS>().AndWhere(n => n.P_CODE, OperationMethod.Equal, powersId);
                        T_POWERS T_POWERS = new Model.T_POWERS();
                        T_POWERS = T_POWERS_BLL.GetEntity(query1);
                        string powerName = T_POWERS.P_NAME;
                        if (!_currentRolePowers.ContainsKey(powerName))
                        {
                            _currentRolePowers.Add(powerName, true);
                        }
                    }
                }
                //分组拿到所有权限
                var q = T_POWERS_BLL.GetAllList().GroupBy(n => n.GROUP_NAME);
                //自定数据结构,包括组名,组内权限集
                var powers = q.Select(g => new
                {
                    GroupName = g.Key,
                    Powers    = g
                });
                Grid2.DataSource = powers;
                Grid2.DataBind();
            }
        }
        /// <summary>
        ///右侧分组权限绑定,并显示对应角色有哪些权限
        /// 修改人:金协民 2015年7月29日
        /// </summary>
        private void BindGrid2()
        {
            var roleId = GetSelectedDataKeyID(Grid1);
            if (string.IsNullOrEmpty(roleId))
            {
                Grid2.DataSource = null;
                Grid2.DataBind();
            }
            else
            {
                // 当前选中角色拥有的权限列表
                _currentRolePowers.Clear();
                List<T_ROLES_POWERS> T_ADMIN_ROLE_POWER_LIST = new List<T_ROLES_POWERS>();
                var query = new DapperExQuery<T_ROLES_POWERS>().AndWhere(n => n.R_CODE, OperationMethod.Equal, roleId);
                //拿到角色对应的权限,标记为选中
                T_ADMIN_ROLE_POWER_LIST = T_ROLES_POWERS_BLL.GetAllList(query);
                if (T_ADMIN_ROLE_POWER_LIST != null)
                {
                    foreach (var power in T_ADMIN_ROLE_POWER_LIST)
                    {
                        var powersId = power.P_CODE;
                        var query1 = new DapperExQuery<T_POWERS>().AndWhere(n => n.P_CODE, OperationMethod.Equal, powersId);
                        T_POWERS T_POWERS = new Model.T_POWERS();
                        T_POWERS = T_POWERS_BLL.GetEntity(query1);
                        string powerName = T_POWERS.P_NAME;
                        if (!_currentRolePowers.ContainsKey(powerName))
                        {
                            _currentRolePowers.Add(powerName, true);
                        }
                    }
                }
                //分组拿到所有权限
                var q = T_POWERS_BLL.GetAllList().GroupBy(n => n.GROUP_NAME);
                //自定数据结构,包括组名,组内权限集
                var powers = q.Select(g => new
                {
                    GroupName = g.Key,
                    Powers = g
                });
                Grid2.DataSource = powers;
                Grid2.DataBind();
            }

        }