Beispiel #1
0
        public static UserPermissions GetPermissions(string userId)
        {
            var userObjectPermDA = new UserObjectPermissionDataAdapter();
            var list             = userObjectPermDA.GetByUserId(userId);

            if (list != null && list.Count > 0)
            {
                return(new UserPermissions
                {
                    Permissions = list,
                    InheriteFromRole = false
                });
            }

            var user               = GetUserById(userId);
            var roleSvc            = new RoleService();
            var rolePermissionList = roleSvc.GetPermissions(user.Role.Id);
            var result             = rolePermissionList.Select(item => new UserObjectPermission()
            {
                Id = item.Id, ObjectType = item.ObjectType, User = user, Permission = item.Permission
            }).ToList();

            return(new UserPermissions
            {
                InheriteFromRole = true,
                Permissions = result
            });
        }
Beispiel #2
0
        public static void SetPermissions(string userId, UserPermissions permissions)
        {
            var userObjectPermDA = new UserObjectPermissionDataAdapter();

            if (permissions.InheriteFromRole)
            {
                var list = userObjectPermDA.GetByUserId(userId);
                foreach (var item in list)
                {
                    userObjectPermDA.Delete(item.Id);
                }
            }
            else
            {
                foreach (var item in permissions.Permissions)
                {
                    userObjectPermDA.Insert(item);
                }
            }
        }