public LoginResponse BindWechatAccount(BindWechatAccountRequest request)
        {
            var response  = new LoginResponse();
            var sessionId = GetWechatSessionId(request.WeiXinCode);
            var openId    = GetOpenId(sessionId);

            if (string.IsNullOrEmpty(openId))
            {
                response.Code    = AuthenticationErrorCode.FailedGetWxOpenId;
                response.Message = "验证失败,请关闭小程序,重新进入";
                return(response);
            }

            var alctResponse = authenticationAgent.VerifyVerificationCode(request.PhoneNumber, request.VerificationCode, GetApiToken().AccessToken);

            if (alctResponse.Code == "1")
            {
                response.Code    = AuthenticationErrorCode.PhoneNumberInvalid;
                response.Message = "手机号码不存在,请检查后重试";
                return(response);
            }
            else if (alctResponse.Code == "2")
            {
                response.Code    = AuthenticationErrorCode.InvalidVerificationCode;
                response.Message = "验证码错误,请检查后重试";
                return(response);
            }

            var member = new Member()
            {
                OpenId = openId,
                DriverIdentification = alctResponse.DriverIdentity,
                CreatedDate          = DateTime.Now
            };

            using (var transaction = dbContext.Database.BeginTransaction())
            {
                dbContext.Add(member);
                dbContext.SaveChanges();
                transaction.Commit();
            }

            var token = GetToken(member);

            if (token == null)
            {
                response.Code    = AuthenticationErrorCode.LoginFailed;
                response.Message = "登陆失败,请关闭小程序,重新进入";
                return(response);
            }

            response.Code      = 0;
            response.SessionId = sessionId;
            return(response);
        }
 public IActionResult BindWechatAccount([FromBody] BindWechatAccountRequest request)
 {
     return(Ok(authenticationBusinessLogic.BindWechatAccount(request)));
 }