Exemplo n.º 1
0
        ///<summary>Pass in the user and all of the userGroups that the user should be attached to.
        ///Detaches the userCur from any usergroups that are not in the given list.
        ///Returns a count of how many user group attaches were affected.</summary>
        public static long SyncForUser(Userod userCur, List <long> listUserGroupNums)
        {
            if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
            {
                return(Meth.GetLong(MethodBase.GetCurrentMethod(), userCur, listUserGroupNums));
            }
            long rowsChanged = 0;

            foreach (long userGroupNum in listUserGroupNums)
            {
                if (!userCur.IsInUserGroup(userGroupNum))
                {
                    UserGroupAttach userGroupAttach = new UserGroupAttach();
                    userGroupAttach.UserGroupNum = userGroupNum;
                    userGroupAttach.UserNum      = userCur.UserNum;
                    Crud.UserGroupAttachCrud.Insert(userGroupAttach);
                    rowsChanged++;
                }
            }
            foreach (UserGroupAttach userGroupAttach in UserGroupAttaches.GetForUser(userCur.UserNum))
            {
                if (!listUserGroupNums.Contains(userGroupAttach.UserGroupNum))
                {
                    Crud.UserGroupAttachCrud.Delete(userGroupAttach.UserGroupAttachNum);
                    rowsChanged++;
                }
            }
            return(rowsChanged);
        }
Exemplo n.º 2
0
 ///<summary></summary>
 public static long Insert(UserGroupAttach userGroupAttach)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         userGroupAttach.UserGroupAttachNum = Meth.GetLong(MethodBase.GetCurrentMethod(), userGroupAttach);
         return(userGroupAttach.UserGroupAttachNum);
     }
     return(Crud.UserGroupAttachCrud.Insert(userGroupAttach));
 }
Exemplo n.º 3
0
 public static void Delete(UserGroupAttach userGroupAttach)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         Meth.GetVoid(MethodBase.GetCurrentMethod(), userGroupAttach);
         return;
     }
     Crud.UserGroupAttachCrud.Delete(userGroupAttach.UserGroupAttachNum);
 }
Exemplo n.º 4
0
 ///<summary>Does not add a new usergroupattach if the passed-in userCur is already attached to userGroup.</summary>
 public static void AddForUser(Userod userCur, long userGroupNum)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         Meth.GetVoid(MethodBase.GetCurrentMethod(), userCur, userGroupNum);
         return;
     }
     if (!userCur.IsInUserGroup(userGroupNum))
     {
         UserGroupAttach userGroupAttach = new UserGroupAttach();
         userGroupAttach.UserGroupNum = userGroupNum;
         userGroupAttach.UserNum      = userCur.UserNum;
         Crud.UserGroupAttachCrud.Insert(userGroupAttach);
     }
 }
Exemplo n.º 5
0
        ///<summary>Pass in a list of CEMT usergroupattaches, and this will return a list of corresponding local usergroupattaches.</summary>
        public static List <UserGroupAttach> TranslateCEMTToLocal(List <UserGroupAttach> listUserGroupAttachCEMT)
        {
            List <UserGroupAttach> retVal           = new List <UserGroupAttach>();
            List <Userod>          listRemoteUsers  = Userods.GetUsersNoCache();
            List <UserGroup>       listRemoteGroups = UserGroups.GetCEMTGroupsNoCache();

            foreach (UserGroupAttach attachCur in listUserGroupAttachCEMT)
            {
                Userod    userCur      = listRemoteUsers.FirstOrDefault(x => attachCur.UserNum == x.UserNumCEMT);
                UserGroup userGroupCur = listRemoteGroups.FirstOrDefault(x => attachCur.UserGroupNum == x.UserGroupNumCEMT);
                if (userCur == null || userGroupCur == null)
                {
                    continue;
                }
                UserGroupAttach userGroupAttachNew = new UserGroupAttach()
                {
                    UserNum      = userCur.UserNum,
                    UserGroupNum = userGroupCur.UserGroupNum
                };
                retVal.Add(userGroupAttachNew);
            }
            return(retVal);
        }