示例#1
0
        public bool SetRoleUser(SetRoleViewModel model)
        {
            aService.ClearRolesUser(model.UserId);
            foreach (int id in model.RoleId)
            {
                Accessment assess = new Accessment();
                assess.UserId       = model.UserId;
                assess.RoleId       = id;
                assess.AccessedDate = DateTime.Now;
                assess.ExpireDate   = DateTime.Now.AddYears(1);
                aService.SetRoleUser(assess);
            }
            User         user         = cService.GetUser(model.UserId);
            Notification notification = new Notification();

            notification.AuthorId    = _currentUserId;
            notification.CreatedDate = DateTime.Now;
            notification.Content     = string.Join(",", user.Assessments.Select(u => u.Role.Name));
            notification.Seen        = false;
            notification.Type        = NotificationSettingEnum.Banned;
            notification.UserId      = model.UserId;
            notification.Link        = Url.Action("BannedPage", "Account");
            cService.AddNotification(notification);

            using (RealTimeService rService = new RealTimeService(new CPMathHubModelContainer(), notification.UserId))
            {
                IEnumerable <string> connectionIds = RealTimeHub.Connections.GetConnections(notification.UserId);
                foreach (string conId in connectionIds)
                {
                    _hub.Clients.Client(conId).notifyNewActivity(rService.CountNewActivityNotification());
                }
            }
            return(true);
        }
示例#2
0
 public void SetRoleUser(Accessment assessment)
 {
     if (dal.Repository <Accessment>().Table.Count(a => a.RoleId == assessment.RoleId && a.UserId == assessment.UserId) == 0)
     {
         dal.Repository <Accessment>().Insert(assessment);
         dal.Save();
     }
 }
示例#3
0
        public void CreateProfile(int userId)
        {
            Profile profile = new Profile();

            profile.User = GetUser(userId);
            _dal.Repository <Profile>().Insert(profile);
            User user = GetUser(userId);

            user.CreatedDate = DateTime.Now;
            user.Reputation  = 0;
            user.Status      = UserStatusEnum.Active;
            Accessment accessment = new Accessment();

            accessment.RoleId       = 1;
            accessment.AccessedDate = DateTime.Now;
            accessment.ExpireDate   = DateTime.Now.AddYears(1);
            user.Assessments.Add(accessment);
            _dal.Repository <User>().Update(user);
            _dal.Save();
        }