Exemple #1
0
        /// <summary>
        ///  登录
        /// </summary>
        /// <param name="data">登录参数</param>
        /// <returns>返回结果</returns>
        public static Result Login(LoginDto dto)
        {
            var strPwd = EncryptUtils.MD5(dto.UserPwd.Trim().ToLower()).ToLower();

            var itme = DbContext.StoredProcedure("Pro_SysLogin")
                       .Parameter("userName", dto.UserName)
                       .Parameter("userPwd", strPwd).QuerySingle <LoginDataDto>();

            if (itme != null)
            {
                var token = AuthToken.CreatToken(itme);

                #region 记录登录日志
                try
                {
                    sysLoginLogInfo logInfo = new sysLoginLogInfo()
                    {
                        FAccount  = dto.UserName,
                        FRedisKey = token,
                        FSource   = 1,
                        FAddTime  = DateTime.Now
                    };
                    logInfo.SaveOnSubmit();
                }
                catch (Exception ex)
                {
                    LogService.Default.Fatal("记录登录日志报错" + ex.Message);
                }
                #endregion



                if (RedisHelper.Item_Set(token, itme, 168))
                {
                    return new Result {
                               code = 1, message = "登录成功", @object = token
                    }
                }
                ;
                return(new Result {
                    code = 0, message = "缓存服务器异常", @object = null
                });
            }
            return(new Result {
                code = 0, message = "账户或密码错误", @object = null
            });
        }