Example #1
0
 /// <summary>
 /// 添加队列项
 /// </summary>
 /// <param name="item"></param>
 private void AddItem(SysRoleOnline item)
 {
     if (m_isStarted)
     {
         SysRolesOnline.Instance.SysRolesList.Add(item);
     }
 }
Example #2
0
        /// <summary>
        /// 判断用户活动时间是否小于指定值
        /// </summary>
        /// <param name="sysRoleOnline"></param>
        /// <returns></returns>
        private static bool Predicate(SysRoleOnline sysRoleOnline)
        {
            if (sysRoleOnline == null)
            {
                return(false);
            }

            return(sysRoleOnline.ActiveTime < DateTime.Now.AddDays(-7));
        }
Example #3
0
 /// <summary>
 /// 移除列表用户
 /// </summary>
 /// <param name="sysRoleOnline"></param>
 private static bool RemoveItem(SysRoleOnline sysRoleOnline)
 {
     if (m_isStarted)
     {
         lock (syncRoot3)
         {
             return(SysRolesOnline.Instance.SysRolesList.Remove(sysRoleOnline));
         }
     }
     return(false);
 }
Example #4
0
        /// <summary>
        /// 刷新用户返回新Token(令牌)
        /// </summary>
        /// <param name="Token"></param>
        public static string Refresh(string Token, HttpContext context)
        {
            SysRoleOnline sysRoleOnline = SysRolesOnline.Instance.SysRolesList.Find(a => a.Token == Token);

            if (sysRoleOnline != null)
            {
                RemoveItem(sysRoleOnline);
                return(Insert(sysRoleOnline.SysRole, context));
            }
            return(string.Empty);
        }
Example #5
0
 /// <summary>
 /// 移除用户
 /// </summary>
 /// <param name="model"></param>
 public static bool ClearRole(string Token)
 {
     if (Token != null)
     {
         SysRoleOnline sysRoleOnline = SysRolesOnline.Instance.SysRolesList.Find(a => a.Token == Token);
         if (RemoveItem(sysRoleOnline))
         {
             return(true);
         }
     }
     return(false);
 }
Example #6
0
 /// <summary>
 /// 将用户插入队列返回Token
 /// </summary>
 /// <param name="model"></param>
 /// <param name="context"></param>
 /// <returns></returns>
 public static string Insert(SysRoles model, HttpContext context)
 {
     if (m_isStarted)
     {
         lock (syncRoot)
         {
             SysRoleOnline sysRoleOnline = SysRolesOnline.Instance.SysRolesList.Find(a => a.RoleID == model.Id);
             if (sysRoleOnline == null)
             {
                 sysRoleOnline = new SysRoleOnline(context)
                 {
                     RoleID = model.Id, SysRole = model
                 };
                 baseService.AddItem(sysRoleOnline);
                 return(sysRoleOnline.Token);
             }
             return(sysRoleOnline.Token);
         }
     }
     return(string.Empty);
 }