コード例 #1
0
        /// <summary>
        /// Adds moderator to organization
        /// </summary>
        /// <param name="moderator">CreateModeratorViewModel</param>
        /// <returns>Created moderator</returns>
        public ModeratorViewModel CreateModerator(CreateModeratorViewModel moderator)
        {
            var roleId         = _unitOfWork.RoleRepository.Read().Where(r => r.Name == UserRoles.Moderator).FirstOrDefault().Id;
            var user           = _unitOfWork.UsersRepository.GetUser(moderator.Login);
            var membershipToUp = _unitOfWork.MembershipRepository.Read().Where(m => m.UserId == user.Id).FirstOrDefault();
            var membership     = new Membership {
                Id = membershipToUp.Id, OrgId = moderator.OrgId, UserId = user.Id, RoleId = roleId
            };

            _unitOfWork.MembershipRepository.Update(membership);
            _unitOfWork.SaveChanges();
            var result = new ModeratorViewModel
            {
                FirstName = user.FirstName,
                Id        = user.Id,
                LastName  = user.LastName,
                Login     = user.Login,
                Email     = user.Email
            };

            return(result);
        }
コード例 #2
0
        /// <summary>
        /// Deletes moderator
        /// </summary>
        /// <param name="moderatorLogin"> Login of moderator to delete</param>
        /// <returns>lModeratorViewModel</returns>
        public ModeratorViewModel DeactivateModerator(string moderatorLogin)
        {
            var roleId             = _unitOfWork.RoleRepository.Read().Where(r => r.Name == UserRoles.Partner).FirstOrDefault().Id;
            var user               = _unitOfWork.UsersRepository.GetUser(moderatorLogin);
            var membershipToUpdate = _unitOfWork.MembershipRepository.Read().Where(m => m.UserId == user.Id).FirstOrDefault();
            var membership         = new Membership {
                Id = membershipToUpdate.Id, RoleId = roleId, UserId = user.Id, OrgId = 1
            };

            _unitOfWork.MembershipRepository.Update(membership);
            _unitOfWork.SaveChanges();
            var result = new ModeratorViewModel
            {
                Id        = user.Id,
                Login     = user.Login,
                FirstName = user.FirstName,
                LastName  = user.LastName,
                Email     = user.Email
            };

            return(result);
        }