Esempio n. 1
0
        public string ChangePassword(string userId)
        {
            var r                      = new Random(DateTime.Now.Millisecond);
            var password               = r.Next(100000, 999999).ToString();
            var encodePassword         = Encipherment.MD5(string.Format("{0}{1}", password, _gbKey)).ToUpper();
            var password_balance       = r.Next(100000, 999999).ToString();
            var encodePassword_balance = Encipherment.MD5(string.Format("{0}{1}", password_balance, _gbKey)).ToUpper();

            using (var biz = new GameBiz.Business.GameBizBusinessManagement())
            {
                biz.BeginTran();

                var loginManager = new LoginLocalManager();
                var user         = loginManager.GetLoginByUserId(userId);
                if (user == null)
                {
                    throw new AuthException("用户不存在或不是本地注册用户,不能修改密码。请确定是否是通过支付宝或QQ帐号进行登录,如有疑问,请联系客服。");
                }
                user.Password = encodePassword;
                loginManager.UpdateLogin(user);

                var balanceManage = new UserBalanceManager();
                var b             = balanceManage.QueryUserBalance(userId);
                b.Password = encodePassword_balance;
                balanceManage.UpdateUserBalance(b);

                biz.CommitTran();
            }
            return(string.Format("{0}|{1}", password, password_balance));
        }
Esempio n. 2
0
 public bool?CheckIsSame2LoginPassword(string userId, string newPassword)
 {
     using (var loginManager = new LoginLocalManager())
     {
         var user = loginManager.GetLoginByUserId(userId);
         if (user == null)
         {
             return(null);
         }
         return(user.Password.ToUpper().Equals(Encipherment.MD5(string.Format("{0}{1}", newPassword, _gbKey)).ToUpper()));
     }
 }
Esempio n. 3
0
        public LoginLocal LoginByUserId(string userId)
        {
            LoginLocal loginInfo = null;

            using (var loginManager = new LoginLocalManager())
            {
                loginInfo = loginManager.GetLoginByUserId(userId);
                if (loginInfo != null && loginInfo.User != null)
                {
                    NHibernate.NHibernateUtil.Initialize(loginInfo.User.RoleList);
                    NHibernate.NHibernateUtil.Initialize(loginInfo.Register);
                }
            }
            return(loginInfo);
        }
Esempio n. 4
0
        public void ResetUserPassword(string userId)
        {
            var newPassword = Encipherment.MD5(string.Format("{0}{1}", C_DefaultPassword, _gbKey)).ToUpper();

            using (var biz = new GameBiz.Business.GameBizBusinessManagement())
            {
                biz.BeginTran();
                using (var loginManager = new LoginLocalManager())
                {
                    var user = loginManager.GetLoginByUserId(userId);
                    if (user == null)
                    {
                        throw new AuthException("用户不是本地注册用户,不允许修改密码。请确定是否是通过支付宝或QQ帐号进行登录,如有疑问,请联系客服。");
                    }
                    user.Password = newPassword;
                    loginManager.UpdateLogin(user);
                }
                biz.CommitTran();
            }
        }
Esempio n. 5
0
 public ManagerQueryInfo QueryBackgroundManagerByKey(string key)
 {
     using (var manager = new LoginLocalManager())
     {
         var reg = manager.GetRegisterByKey(key);
         if (reg == null)
         {
             return(null);
         }
         var roleIdList = reg.User.RoleList.Select((r) => r.RoleId).ToList();
         var info       = new ManagerQueryInfo
         {
             UserId      = reg.UserId,
             DisplayName = reg.DisplayName,
             RoleIdList  = string.Join(", ", roleIdList.ToArray()),
         };
         var user = manager.GetLoginByUserId(reg.UserId);
         info.LoginName = user.LoginName;
         return(info);
     }
 }