public ActionResult Logout()
 {
     SysLogLogonService.WriteDbLog(new SysLogLogon
     {
         LogType     = DbLogType.Exit.ToString(),
         Account     = UserManager.GetCurrentUserInfo().UserName,
         RealName    = UserManager.GetCurrentUserInfo().NickName,
         Description = "安全退出系统",
     });
     CacheManager.Remove(UserManager.GetCurrentUserCacheId());
     CookieHelper.Remove(KeyManager.IsMember);
     return(RedirectToAction("Login", "Account"));
 }
Example #2
0
        public JsonResult List(SysLogLogonViewModel viewModel, PageInfo pageInfo)
        {
            QueryCollection queries = new QueryCollection();

            if (!string.IsNullOrEmpty(viewModel.RealName))
            {
                queries.Add(new Query {
                    Name = "RealName", Operator = Query.Operators.Contains, Value = viewModel.RealName
                });
            }
            if (!string.IsNullOrEmpty(viewModel.Account))
            {
                queries.Add(new Query {
                    Name = "Account", Operator = Query.Operators.Contains, Value = viewModel.Account
                });
            }
            if (!string.IsNullOrEmpty(viewModel.StartEndDate))
            {
                queries.Add(new Query {
                    Name = "CreateTime", Operator = Query.Operators.GreaterThanOrEqual, Value = StartEndDateHelper.GteStartDate(viewModel.StartEndDate)
                });
                queries.Add(new Query {
                    Name = "CreateTime", Operator = Query.Operators.LessThanOrEqual, Value = StartEndDateHelper.GteEndDate(viewModel.StartEndDate)
                });
            }
            var list = SysLogLogonService.GetListByPage(queries.AsExpression <SysLogLogon>(), x => true, pageInfo.Limit, pageInfo.Page, out int totalCount, true).Select(x => new
            {
                x.Id,
                x.LogType,
                x.Account,
                x.RealName,
                x.Description,
                x.IPAddress,
                x.IPAddressName,
                x.CreateTime
            }).ToList();

            return(Json(Pager.Paging(list, totalCount), JsonRequestBehavior.AllowGet));
        }
 public ActionResult Login(LoginViewModel loginViewModel)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(WriteError("实体验证失败"));
         }
         if (loginViewModel.VerifyCode.ToLower() != (string)TempData["verifyCode"])
         {
             return(WriteError("验证码失败"));
         }
         bool result = SysUserService.CheckLogin(loginViewModel.LoginName, loginViewModel.LoginPassword);
         if (result)
         {
             var    user        = SysUserService.GetList(x => x.UserName == loginViewModel.LoginName).FirstOrDefault();
             string userLoginId = Guid.NewGuid().ToString();
             if (loginViewModel.IsMember)
             {
                 List <string> list = new List <string>
                 {
                     userLoginId,
                     "0"
                 };
                 CookieHelper.Set(KeyManager.IsMember, DESUtils.Encrypt(list.ToJson()));
                 CacheManager.Set(userLoginId, user, new TimeSpan(10, 0, 0, 0));
             }
             else
             {
                 CookieHelper.Remove(KeyManager.IsMember);
                 List <string> list = new List <string>
                 {
                     userLoginId,
                     "1"
                 };
                 CookieHelper.Set(KeyManager.IsMember, DESUtils.Encrypt(list.ToJson()), 30);
                 CacheManager.Set(userLoginId, user, new TimeSpan(0, 30, 0));
             }
             SysLogLogonService.WriteDbLog(new SysLogLogon
             {
                 LogType     = DbLogType.Login.ToString(),
                 Account     = user.UserName,
                 RealName    = user.NickName,
                 Description = "登陆成功",
             });
             return(WriteSuccess("登录成功"));
         }
         else
         {
             return(WriteError("用户名或者密码错误"));
         }
     }
     catch (Exception ex)
     {
         SysLogLogonService.WriteDbLog(new SysLogLogon
         {
             LogType     = DbLogType.Exception.ToString(),
             Account     = loginViewModel.LoginName,
             RealName    = loginViewModel.LoginName,
             Description = "登录失败," + ex.Message
         });
         return(WriteError(ex));
     }
 }