Esempio n. 1
0
        /// <summary>
        /// 登录状态
        /// </summary>
        /// <param name="model"></param>
        /// <param name="applicationUser"></param>
        /// <param name="loginType"></param>
        /// <returns></returns>
        private LoginUserStatus ReLoginStatus(LoginViewModel model, out ApplicationUser applicationUser, int loginType = 1)
        {
            applicationUser = new ApplicationUser();
            var userStor  = new FrontUserStore <FrontIdentityUser>();
            var userDatas = userStor.FindLogin(model.UserName);

            if (userDatas == null || userDatas.Count == 0)
            {
                return(LoginUserStatus.NoExistsUser);
            }

            foreach (var userData in userDatas)
            {
                if (loginType == 1)
                {
                    if (!string.IsNullOrEmpty(userData.PasswordHash))
                    {
                        bool result = VerifyHashedPassword(userData.PasswordHash, model.Password);

                        if (result)
                        {
                            if (userData != null)
                            {
                                if (userData.IsNeedModifyPw == 1)
                                {
                                    //  applicationUser = this.ConvertApplicationUser(userDatas[0]);
                                    return(LoginUserStatus.NeedModfiyPassWord);
                                }

                                applicationUser = this.ConvertApplicationUser(userData);
                                return(LoginUserStatus.Sucessed);
                            }
                        }
                        else
                        {
                            return(LoginUserStatus.NameOrPassWordError);
                        }
                    }
                }
                else
                {
                    if (userData != null)
                    {
                        applicationUser = this.ConvertApplicationUser(userData);
                        return(LoginUserStatus.Sucessed);
                    }
                }
            }

            return(LoginUserStatus.Failed);
        }
Esempio n. 2
0
        /// <summary>
        /// 登陆厂操作
        /// </summary>
        /// <param name="model"></param>
        /// <param name="applicationUser"></param>
        /// <param name="loginType"></param>
        /// <returns></returns>
        private bool LoginFactory(LoginViewModel model, out ApplicationUser applicationUser, int loginType = 1)
        {
            applicationUser = new ApplicationUser();
            var userStor  = new FrontUserStore <FrontIdentityUser>();
            var userDatas = userStor.FindLogin(model.UserName);

            foreach (var userData in userDatas)
            {
                if (loginType == 1)
                {
                    if (!string.IsNullOrEmpty(userData.PasswordHash))
                    {
                        bool result = VerifyHashedPassword(userData.PasswordHash, model.Password);

                        if (result)
                        {
                            if (userData != null)
                            {
                                applicationUser = this.ConvertApplicationUser(userData);
                                return(true);
                            }
                        }
                    }
                }
                else
                {
                    if (userData != null)
                    {
                        applicationUser = this.ConvertApplicationUser(userData);
                        return(true);
                    }
                }
            }

            return(false);
        }