Exemple #1
0
 public Role(int id, string name, string description, IImmutableSet <IRight> rights = null, PermissionsSource source = PermissionsSource.Manual)
 {
     this.Id          = id;
     this.Name        = name;
     this.Description = description;
     this.Rights      = rights.DefaultIfNull();
     this.Source      = source;
 }
Exemple #2
0
 public Role(int id, string name, string description, IImmutableSet<IRight> rights = null, PermissionsSource source = PermissionsSource.Manual)
 {
     this.Id = id;
     this.Name = name;
     this.Description = description;
     this.Rights = rights.DefaultIfNull();
     this.Source = source;
 }
 public Permissions Merge(IImmutableSet <IRole> requiredRoles     = null,
                          IImmutableSet <IRole> restrictedRoles   = null,
                          IImmutableSet <IRight> requiredRights   = null,
                          IImmutableSet <IRight> restrictedRights = null,
                          PermissionsSource source = PermissionsSource.Manual)
 {
     return(new Permissions(requiredRoles.Merge(this.RequiredRoles),
                            restrictedRoles.Merge(this.RestrictedRoles),
                            requiredRights.Merge(this.RequiredRights),
                            restrictedRights.Merge(this.RestrictedRights),
                            source));
 }
 public Permissions(IImmutableSet <IRole> requiredRoles     = null,
                    IImmutableSet <IRole> restrictedRoles   = null,
                    IImmutableSet <IRight> requiredRights   = null,
                    IImmutableSet <IRight> restrictedRights = null,
                    PermissionsSource source = PermissionsSource.Manual)
 {
     this.RequiredRoles    = requiredRoles.DefaultIfNull();
     this.RestrictedRoles  = restrictedRoles.DefaultIfNull();
     this.RequiredRights   = requiredRights.DefaultIfNull();
     this.RestrictedRights = restrictedRights.DefaultIfNull();
     this.Source           = source;
 }
 public Permissions Merge(IImmutableSet<IRole> requiredRoles = null,
                          IImmutableSet<IRole> restrictedRoles = null,
                          IImmutableSet<IRight> requiredRights = null,
                          IImmutableSet<IRight> restrictedRights = null,
                          PermissionsSource source = PermissionsSource.Manual)
 {
     return new Permissions(requiredRoles.Merge(this.RequiredRoles),
                            restrictedRoles.Merge(this.RestrictedRoles),
                            requiredRights.Merge(this.RequiredRights),
                            restrictedRights.Merge(this.RestrictedRights),
                            source);
 }
 public Permissions(IImmutableSet<IRole> requiredRoles = null,
                    IImmutableSet<IRole> restrictedRoles = null,
                    IImmutableSet<IRight> requiredRights = null,
                    IImmutableSet<IRight> restrictedRights = null,
                    PermissionsSource source = PermissionsSource.Manual)
 {
     this.RequiredRoles = requiredRoles.DefaultIfNull();
     this.RestrictedRoles = restrictedRoles.DefaultIfNull();
     this.RequiredRights = requiredRights.DefaultIfNull();
     this.RestrictedRights = restrictedRights.DefaultIfNull();
     this.Source = source;
 }
        private IImmutableQueue<IRole> GetFilteredRoles(IEnumerable<IRole> roles, PermissionsSource source)
        {
            var queue = ImmutableQueue<IRole>.Empty;

            foreach (var role in roles)
            {
                if (role.Source == source)
                    queue = queue.Enqueue(role);
            }

            return queue;
        }
        private IImmutableQueue <IRole> GetFilteredRoles(IEnumerable <IRole> roles, PermissionsSource source)
        {
            var queue = ImmutableQueue <IRole> .Empty;

            foreach (var role in roles)
            {
                if (role.Source == source)
                {
                    queue = queue.Enqueue(role);
                }
            }

            return(queue);
        }
 /// <summary>
 /// 权限位置上移
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void TbtnPermissionsUp_OnClick(object sender, RoutedEventArgs e)
 {
     var selectedIndex = DgPermissions.SelectedIndex;
     if (selectedIndex == -1)
         _metroWindow.ShowMessageAsync("友情提示", "请选择需要移动的权限");
     else
     {
         var selectedModel = PermissionsSource[selectedIndex];
         var upIndex = selectedIndex - 1;
         if (upIndex > -1)
         {
             PermissionsSource.Remove(selectedModel);
             PermissionsSource.Insert(upIndex, selectedModel);
             DgPermissions.SelectedItem = selectedModel;
         }
     }
 }