/// <summary> /// 保存用户缓存 /// </summary> private void SaveCurrentUser(SysUserContext context) { try { DateTime expireTime = DateTime.Now.AddHours(12); SessionCookieUtility.WriteCookie(Constant.SysCookieKey, DesEncoderAndDecoder.Encrypt(context.Serialize()), expireTime); } catch (Exception ex) { LogUtils.LogError("SysUserService.SaveCurrentUser", ex); } }
//1.1 登录 public bool Login(string account, string pwd, out string msg) { bool flag = false; msg = string.Empty; try { var detail = _dbContext.QueryFirstOrDefault <t_sys_user>(@"select * from t_sys_user where account=@account and pwd=@pwd ", new { account = account, pwd = pwd }); if (detail == null) { msg = "账号或密码错误"; } else { if (detail.sysUserStatus == SysUserStatusEm.禁用) { msg = "账号已禁用请联系管理员"; } else { detail.lastlogintime = DateTime.Now; _dbContext.Update(detail); //记录缓存 var users = new SysUserContext { Id = detail.id, Name = detail.name, Account = detail.account }; SaveCurrentUser(users); flag = true; } } } catch (Exception ex) { flag = false; msg = "服务异常"; LogUtils.LogError("SysUserService.Login", ex); } return(flag); }
private static SysUserContext GetSysUser() { SysUserContext sysContext = null; try { string key = SessionCookieUtility.GetCookie(Constant.SysCookieKey).ToString(); if (key.IsNotEmpty()) { sysContext = DesEncoderAndDecoder.Decrypt(key).Deserialize <SysUserContext>(); } } catch (Exception ex) { LogUtils.LogError("UserContext.GetSysUser", ex); } return(sysContext); }