public async Task <IActionResult> PreCreate(string out_trade_no, string subject, string total_amount, string body, string notify_url = "") { var model = new AlipayTradePrecreateModel { OutTradeNo = out_trade_no, Subject = subject, TotalAmount = total_amount, Body = body }; var req = new AlipayTradePrecreateRequest(); req.SetBizModel(model); req.SetNotifyUrl(notify_url); var response = await _client.ExecuteAsync(req); ResponseModel responseModel = new ResponseModel() { code = HTTPResponseCode.PartialContent, data = response.Body }; if (response.IsError) { responseModel.code = HTTPResponseCode.BadRequest; responseModel.message = response.Msg; } else { responseModel.code = HTTPResponseCode.Successful; } return(Json(responseModel)); }
/// <summary> /// 获取会员基础信息 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <AuthDto> GetAuthAsync(string code) { var options = new AlipayOptions(); options.AppId = ""; options.AppPrivateKey = ""; options.AlipayPublicKey = ""; var req = new AlipaySystemOauthTokenRequest() { Code = code, RefreshToken = "", GrantType = "authorization_code" }; AlipaySystemOauthTokenResponse response = await _alipayClient.ExecuteAsync(req, options); if (response.IsError) { throw new UserFriendlyException(response.SubMsg); } var dto = new AuthDto(); dto.AccessToken = response.AccessToken; dto.AuthTokenType = response.AuthTokenType; dto.ExpiresIn = response.ExpiresIn; dto.ReExpiresIn = response.ReExpiresIn; dto.RefreshToken = response.RefreshToken; dto.UserId = response.UserId; return(dto); }
public async Task <IActionResult> PreCreate(AlipayTradePreCreateViewModel viewModel) { if (_Interceptor != null) { return(Ok("this is _Interceptor")); } var model = new AlipayTradePrecreateModel { OutTradeNo = viewModel.OutTradeNo, Subject = viewModel.Subject, TotalAmount = viewModel.TotalAmount, Body = viewModel.Body }; var req = new AlipayTradePrecreateRequest(); req.SetBizModel(model); req.SetNotifyUrl(viewModel.NotifyUrl); //var response = await _client.CertificateExecuteAsync(req, _optionsAccessor.Value); var response = await _client.ExecuteAsync(req, _optionsAccessor.Value); ViewData["qrcode"] = response.QrCode; ViewData["response"] = response.Body; return(View()); }
//扫码支付 public override async Task <AlipayReponse> ExecuteAsync(TradeModel request, ServerCallContext context) { var model = new AlipayTradePrecreateModel { OutTradeNo = request.OutTradeNo, Subject = request.Subject, TotalAmount = request.TotalAmount, Body = request.Body }; var req = new AlipayTradePrecreateRequest(); req.SetBizModel(model); req.SetNotifyUrl("http://domain.com/alipay/notify/precreate"); var response = await _client.ExecuteAsync(req, _optionsAccessor.Value); return(new AlipayReponse { Message = response.Body, Qrcode = response.QrCode }); //return base.ExecuteAsync(request, context); }
// 当面付/扫码支付 public async Task <AlipayTradePrecreateResponse> PreCreate(PayRequest request) { var order = OrderService.Get(request.Id); var model = new AlipayTradePrecreateModel { OutTradeNo = order.Order_SN, Subject = order.Name, TotalAmount = order.Order_Money.ToString("n"), Body = order.Remark }; var req = new AlipayTradePrecreateRequest(); req.SetBizModel(model); req.SetNotifyUrl(request.NotifyUrl); return(await client.ExecuteAsync(req, options.Value)); }
public async Task <IActionResult> PreCreate(AlipayTradePreCreateViewModel viewModel) { var model = new AlipayTradePrecreateModel { OutTradeNo = viewModel.OutTradeNo, Subject = viewModel.Subject, TotalAmount = viewModel.TotalAmount, Body = viewModel.Body }; var req = new AlipayTradePrecreateRequest(); req.SetBizModel(model); req.SetNotifyUrl(viewModel.NotifyUrl); var response = await _client.ExecuteAsync(req); ViewData["qrcode"] = response.QrCode; ViewData["response"] = response.Body; return(View()); }