Пример #1
0
        //public List<VM.SimpleData.RoleModel> GetUserRoles(int userId)
        //{
        //    var query = from p in _Context.RoleUser
        //                where p.UserID == userId
        //                select p.Role;
        //    var items = query.ToList();

        //    //Convert to view model
        //    var roleList = ConvertToRoleViewModel(items);
        //    return roleList;
        //}

        //public List<VM.SimpleData.RoleModel> GetRoleList()
        //{
        //    var query = from p in _Context.Role
        //                select p;
        //    var items = query.ToList();

        //    //Convert to view model
        //    var roleList = ConvertToRoleViewModel(items);
        //    return roleList;
        //}

        //private List<VM.RoleModel> ConvertToRoleViewModel(List<MD.Common.Role> items)
        //{
        //    List<VM.RoleModel> roleList = null;
        //    if (items.Count > 0)
        //    {
        //        roleList = new List<VM.RoleModel>();
        //        foreach (var item in items)
        //        {
        //            var role = new VM.RoleModel();
        //            role.RoleID = item.ID;
        //            role.RoleName = item.RoleName;
        //            roleList.Add(role);
        //        }
        //    }
        //    return roleList;
        //}

        private bool ComparePermissionItem(VM.Common.PermissionItem x, MD.Common.vw_Authen_RolePermissions y)
        {
            if (x == null)
            {
                return(false);
            }
            if (y == null)
            {
                return(false);
            }
            if (string.Compare(x.Area, y.Area, true) != 0)
            {
                return(false);
            }
            if (string.Compare(x.Controller, y.Controller, true) != 0)
            {
                return(false);
            }
            if (string.Compare(x.ActionName, y.ActionName, true) != 0)
            {
                return(false);
            }
            if (x.HasActionPermission != y.HasActionPermission)
            {
                return(false);
            }
            return(true);
        }
Пример #2
0
        private List <VM.Common.PermissionItem> ConvertToPermissionViewModel(List <MD.Common.vw_Authen_RolePermissions> items)
        {
            var permissions = new List <VM.Common.PermissionItem>();
            var isFrist     = true;

            VM.Common.PermissionItem permission = null;
            foreach (var item in items)
            {
                if (isFrist)
                {
                    permission = new VM.Common.PermissionItem();
                    isFrist    = false;
                }
                else
                {
                    if (ComparePermissionItem(permission, item))
                    {
                        permission.RoleList.Add(item.RoleID);
                        continue;
                    }
                    else
                    {
                        permissions.Add(permission);
                        permission = new VM.Common.PermissionItem();
                    }
                }
                permission.Area                = item.Area == null ? "" : item.Area.ToLowerInvariant();
                permission.Controller          = item.Controller.ToLowerInvariant();
                permission.ActionName          = item.ActionName.ToLowerInvariant();
                permission.HasActionPermission = item.HasActionPermission;
                permission.RoleList.Add(item.RoleID);
            }
            permissions.Add(permission);
            return(permissions);
        }