public void RequestLogin(REQ_Login loginInfo)
        {
            _currentUserID = loginInfo.UserID;

            Log.Info("客户请求登录,来自IP:{0},用户ID:{1}", tcpSession.RemoteIPEndPoint, _currentUserID);

            UpdateLevel updateLevel = VersionManager.CheckVersion(loginInfo.ClientVersion);

            if (updateLevel == UpdateLevel.Necessary)
            {
                SendAutoUpdaterConfig(SocketConfig.UpdateXmlUrl_complete);
                return;
            }
            else if (updateLevel == UpdateLevel.Optional)
            {
                SendAutoUpdaterConfig(SocketConfig.UpdateXmlUrl_patch);
                return;// 临时的
            }

            if (loginInfo.LoginType == LoginType.First)
            {
                FirstLogin(loginInfo);
            }
            else if (loginInfo.LoginType == LoginType.Reconnect)
            {
                Reconnect(loginInfo);
            }
        }
 private void Reconnect(REQ_Login loginInfo)
 {
     if (loginInfo.IsAuthorized == false)
     {
         LoginFailed(null, "未授权或授权已过期,请重新登录", LoginType.Reconnect);
         return;
     }
     else
     {
         CheckOther(LoginType.Reconnect);
     }
 }
Exemple #3
0
        public void Reconnect(string userID, bool isAuthorized)
        {
            REQ_Login req = new REQ_Login()
            {
                ClientVersion = VersionManager.CurrentVersion,
                IsAuthorized  = isAuthorized,
                UserID        = userID,
                LoginType     = LoginType.Reconnect
            };

            this.Send(req);
        }
        private void FirstLogin(REQ_Login loginInfo)
        {
            bool isExist = _standardAccountService.GetRecordCount("Fk_UserID=@Fk_UserID and PasswordHash=@PasswordHash",
                                                                  new { Fk_UserID = _currentUserID, loginInfo.PasswordHash }) == 1;

            if (isExist == false)
            {
                LoginFailed(null, "用户名或密码错误,请重新输入", LoginType.First);
                return;
            }

            CheckOther(LoginType.First);
        }
Exemple #5
0
        public void TryLogin(string userID, string passwordHash)
        {
            REQ_Login req = new REQ_Login()
            {
                ClientVersion = VersionManager.CurrentVersion,
                IsAuthorized  = false,
                UserID        = userID,
                PasswordHash  = passwordHash,
                LoginType     = LoginType.First
            };

            this.Send(req);
        }