Exemplo n.º 1
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="loginInfo">登录信息</param>
        /// <returns>业务操作结果</returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            PublicHelper.CheckArgument(loginInfo, "loginInfo");

            var user = UserRepository.Entities.SingleOrDefault(o => o.UserName == loginInfo.LoginName);

            if (user == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }

            if (!(user.Password.Compare(loginInfo.Password)))
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
            }

            LoginLog loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, UserId = user.Id
            };

            LoginLogRepository.Insert(loginLog);

            var info = new UserInfo()
            {
                UserName = user.UserName,
                Password = user.Password,
                NickName = user.NickName,
                Email    = user.Email
            };

            return(new OperationResult(OperationResultType.Success, "登录成功。", info));
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="loginInfo"></param>
        /// <returns></returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            PublicHelper.CheckArgument(loginInfo, "logininfo");
            var user =
                SysUserRepository.Entities.SingleOrDefault(
                    u => u.Account == loginInfo.Account || u.Email == loginInfo.Email);

            if (user == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定的账号不存在"));
            }
            if (user.Password != loginInfo.Password)
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确"));
            }

            var loginLog = new LoginLog
            {
                IpAddress = loginInfo.IpAddress,
                User      = user
            };

            LoginLogRepository.Insert(loginLog);

            return(new OperationResult(OperationResultType.Success, "登录成功", user));
        }
Exemplo n.º 3
0
 /// <summary>
 /// 用户登录
 /// </summary>
 /// <param name="loginInfo">登录信息</param>
 /// <returns>业务操作结果</returns>
 public virtual OperationResult Login(LoginInfo loginInfo, string CheckCode, ref SystemUser user)
 {
     try
     {
         PublicHelper.CheckArgument(loginInfo, "loginInfo");
         if (loginInfo.CheckCode.ToUpper() != CheckCode.ToUpper())
         {
             return(new OperationResult(OperationResultType.QueryNull, "验证码输入有误。"));
         }
         user = SysUserRepository.Entities.SingleOrDefault(m => m.UserName == loginInfo.Account || m.Email == loginInfo.Account);
         if (user == null)
         {
             return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
         }
         if (user.Password != loginInfo.Password)
         {
             return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
         }
         LoginLog loginLog = new LoginLog {
             IpAddress = loginInfo.IpAddress, SystemUserID = user.Id
         };
         LoginLogRepository.Insert(loginLog);
         return(new OperationResult(OperationResultType.Success, "登录成功。", user));
     }
     catch (Exception ex)
     {
         return(new OperationResult(OperationResultType.QueryNull, ex.Message.ToString()));;
     }
 }
Exemplo n.º 4
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="loginInfo">登录信息</param>
        /// <returns>业务操作结果</returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            Member member = MemberRepository.Entities.SingleOrDefault(m => m.UserName == loginInfo.Access || m.Email == loginInfo.Access);

            if (member == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }
            if (member.Password != loginInfo.Password)
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
            }
            LoginLog loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, Member = member
            };

            LoginLogRepository.Insert(loginLog);
            return(new OperationResult(OperationResultType.Success, "登录成功。", member));
        }
Exemplo n.º 5
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="loginInfo">登录信息</param>
        /// <returns>业务操作结果</returns>
        public virtual OperationResult Login(LoginInfo loginInfo)
        {
            PublicHelper.CheckArgument(loginInfo, "loginInfo");
            Member member = MemberRepository.Entities.SingleOrDefault(p => p.UserName.Equals(loginInfo.Access) || p.Email.Equals(loginInfo.Access));

            if (member == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }
            if (member.Password != loginInfo.Password)
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
            }
            LoginLog loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, Member = member
            };

            LoginLogRepository.Insert(loginLog);
            return(new OperationResult(OperationResultType.Success, "登录成功。", member));
        }
        //所以还是一样的,追踪的对象才不会出现这种问题,因为它的修改会被上下文追踪
        public void Method3()
        {
            var repo  = new UserRepository();
            var repo1 = new LoginLogRepository();

            var user = new SysUser()
            {
                UserName = "******",
                Password = "******",
            };

            repo.Insert(user);

            var newLoginLog = new LoginLog()
            {
                IpAddress = "user3的ip",
                User      = user
            };

            repo1.Insert(newLoginLog);
        }
        //最正常的新增方式
        public void Method4()
        {
            var repo  = new UserRepository();
            var repo1 = new LoginLogRepository();

            var user = new SysUser()
            {
                UserName = "******",
                Password = "******",
            };

            repo.Insert(user);

            var newUser = repo.Entities.FirstOrDefault(p => p.UserName == "user4");

            var newLoginLog = new LoginLog()
            {
                IpAddress = "user4的ip",
                UserId    = newUser.Id
            };

            repo1.Insert(newLoginLog);
        }