/// <summary> /// 申请登陆 /// </summary> /// <param name="name">账户名</param> /// <param name="password">登陆密码</param> /// <param name="effectiveTime">保存时间</param> /// <param name="isAdmin">是否管理员登陆</param> /// <returns></returns> private EnumLoginState ApplyLogin(string name, string password, int effectiveTime, bool isAdmin) { if (string.IsNullOrEmpty(name)) { return(EnumLoginState.AccountError); } Users user = new Users(); if (name.Contains("@")) { user = UsersAccessor.GetByEmail(name); } else { user = UsersAccessor.GetByMobile(name); } if (user == null) { return(EnumLoginState.AccountError); } if (!string.Equals(user.Password, Strings.PasswordEncrypt(password))) { return(EnumLoginState.PasswordError); } UserId = user.UserId; Password = user.Password; Username = user.Username; Mobile = user.Mobile; Email = user.Email; CurrentLoginTime = DateTime.Now; PermissionCode = user.PermissionCode; SaveLogin(this, effectiveTime); SessionBag.Refresh(); SessionBag.CopyValue(); //更新用户登陆次数 //更新在线数据 return(EnumLoginState.Succeed); }
/// <summary> /// 退出清除cookie 和 session /// </summary> public void Logout() { SessionBag.Refresh(); Cookies.Remove(Context, Keys.UserCookie); }