Пример #1
0
        /// <summary>
        /// 是否已登录
        /// </summary>
        /// <returns></returns>
        public virtual int IsOnLine()
        {
            OperatorAgent user = new OperatorAgent();

            if (LoginProvider == "Cookie")
            {
                user = DESEncrypt.Decrypt(WebHelper.GetCookie(LoginUserKey).ToString()).ToObject <OperatorAgent>();
            }
            else
            {
                user = DESEncrypt.Decrypt(WebHelper.GetSession(LoginUserKey).ToString()).ToObject <OperatorAgent>();
            }
            object token = CacheFactory.Cache().GetCache <string>(user.Id.ToString());

            if (token == null)
            {
                return(-1);//过期
            }
            if (user.Token == token.ToString())
            {
                return(1);//正常
            }
            else
            {
                return(0);//已登录
            }
        }
Пример #2
0
 /// <summary>
 /// 写入登录信息
 /// </summary>
 /// <param name="user">成员信息</param>
 public virtual void AddCurrent(OperatorAgent user)
 {
     try
     {
         if (LoginProvider == "Cookie")
         {
             WebHelper.WriteCookie(LoginUserKey, DESEncrypt.Encrypt(user.ToJson()));
         }
         else
         {
             WebHelper.WriteSession(LoginUserKey, DESEncrypt.Encrypt(user.ToJson()));
         }
         CacheFactory.Cache().WriteCache(user.Token, user.Id.ToString(), user.LogTime.AddHours(1));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Пример #3
0
 /// <summary>
 /// 当前用户
 /// </summary>
 /// <returns></returns>
 public virtual OperatorAgent Current()
 {
     try
     {
         OperatorAgent user = new OperatorAgent();
         if (LoginProvider == "Cookie")
         {
             user = DESEncrypt.Decrypt(WebHelper.GetCookie(LoginUserKey).ToString()).ToObject <OperatorAgent>();
         }
         else if (LoginProvider == "AppClient")
         {
             user = CacheFactory.Cache().GetCache <OperatorAgent>(AppId);
         }
         else
         {
             user = DESEncrypt.Decrypt(WebHelper.GetSession(LoginUserKey).ToString()).ToObject <OperatorAgent>();
         }
         return(user);
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }