示例#1
0
 private void AddToPreDeleteList(ACL_File_User fu)
 {
     if (_fileUsersOriginal.Contains(fu))
     {
         _fileUsersPreDelete.Add(fu);
     }
     else
     {
         _fileUsersPreDelete.Remove(fu);
     }
     _fileUsersPreAdd.Remove(fu);
 }
示例#2
0
 private bool ExistsUser(User u)
 {
     foreach (ListViewItem item in lvPermission.Items)
     {
         ACL_File_User fu = item.Tag as ACL_File_User;
         if (fu != null)
         {
             if (fu.UserID == u.UserID)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
示例#3
0
        /// <summary>
        /// 收集添加和删除的文件-用户,文件-部门的数据
        /// </summary>
        private void CollectAddOrDelFileShare()
        {
            ACL_File_User   fu = null;
            File_Department fd = null;

            if (lvPermission.SelectedItems.Count == 0)
            {
                return;
            }
            fu = lvPermission.SelectedItems[0].Tag as ACL_File_User;
            if (fu != null)
            {
                AddToPreDeleteList(fu);
                return;
            }
            fd = lvPermission.SelectedItems[0].Tag as File_Department;
            if (fd != null)
            {
                AddToPreDeleteList(fd);
            }
        }
示例#4
0
        /// <summary>
        /// 点击添加用户菜单项需要向ListView中添加用户共享
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void UserItem_Click(object sender, EventArgs e)
        {
            //在ListView中添加一个用户项
            ToolStripMenuItem mi = sender as ToolStripMenuItem;

            if (mi == null || mi.Tag == null)
            {
                return;
            }
            User u = mi.Tag as User;

            if (u == null)
            {
                return;
            }
            //向ListView项中添加一个ACL_File_User对象,ListViewItem中保存2种对象,1:File_Department 2:ACL_File_User
            ACL_File_User fu = new ACL_File_User
            {
                UserID         = u.UserID,
                FileID         = _fileID,
                FilePermission = GetDefaultPermission()
            };
            EXListViewItem item = new EXImageListViewItem(u.UserRealName, imageList1.Images["user"]);

            item.Tag = fu;

            for (int i = 0; i < _accessArray_Values.Length; i++)
            {
                EXBoolListViewSubItem sub = CreateBoolSubItem(_accessArray_Name[i], _accessArray_Values[i], _accessArray_Default[i]);
                item.SubItems.Add(sub);
            }
            lvPermission.Items.Add(item);

            if (!_fileUsersPreAdd.Contains(fu) && !_fileUsersOriginal.Contains(fu))
            {
                _fileUsersPreAdd.Add(fu);
            }
            _fileUsersPreDelete.Remove(fu);
        }
示例#5
0
        private void Permission_ValueChanged(ListViewItem item, EXBoolListViewSubItem subItem, int colIndex, bool value)
        {
            //权限值更改后即时修改ListViewItem.Tag中对象里面的FilePermission属性
            File_Department fd    = item.Tag as File_Department;
            int             index = colIndex - 1;

            if (index < 0 || index >= _accessArray_Values.Length)
            {
                return;
            }
            if (fd != null)
            {
                if (value)
                {
                    fd.FilePermission |= _accessArray_Values[index];
                }
                else
                {
                    fd.FilePermission = fd.FilePermission & ~_accessArray_Values[index];
                }
                return;
            }
            ACL_File_User fu = item.Tag as ACL_File_User;

            if (fu == null)
            {
                return;
            }
            if (value)
            {
                fu.FilePermission |= _accessArray_Values[index];
            }
            else
            {
                fu.FilePermission = fu.FilePermission & ~_accessArray_Values[index];
            }
        }
示例#6
0
 public bool DeleteFileUser(ACL_File_User acl)
 {
     return(new ACLFileUserService().DeleteFileUser(acl));
 }
示例#7
0
 public bool UpdateFileUser(ACL_File_User acl)
 {
     return(new ACLFileUserService().UpdateFileUser(acl));
 }
示例#8
0
 public bool AddFileUser(ACL_File_User acl)
 {
     return(new ACLFileUserService().InsertFileUser(acl));
 }
示例#9
0
 public bool Add(ACL_File_User user)
 {
     return(new ACLFileUserService().Add(user));
 }