/// <summary> /// 支付宝支付查询(蚂蚁金服) /// </summary> /// <param name="alipayTradeQueryInfo">查询信息</param> /// <param name="config">config</param> /// <returns>结果</returns> public static AlipayTradeQueryResult QueryPayTradeResult(AlipayTradeQueryInfo alipayTradeQueryInfo, SdkPay.Config config) { var body = QueryPayTrade(alipayTradeQueryInfo, config); var parser = new AopJsonParser <QueryPayTrade>(); var queryPayTrade = parser.Parse(body, SdkPay.Config.Charset); var alipayTradeQueryResult = new AlipayTradeQueryResult { IsSuccess = queryPayTrade.Code == "10000" && (queryPayTrade.trade_status == "TRADE_SUCCESS" || queryPayTrade.trade_status == "TRADE_FINISHED") }; if (alipayTradeQueryResult.IsSuccess) { alipayTradeQueryResult.Buyer = queryPayTrade.buyer_logon_id; alipayTradeQueryResult.PayAmount = Convert.ToDecimal(queryPayTrade.total_amount); alipayTradeQueryResult.PanyInterfaceNo = queryPayTrade.trade_no; alipayTradeQueryResult.TradeNo = queryPayTrade.out_trade_no; } return(alipayTradeQueryResult); }
/// <summary> /// 支付宝支付查询(蚂蚁金服) /// </summary> /// <param name="alipayTradeQueryInfo">查询信息</param> /// <param name="config">config</param> /// <returns>结果</returns> public static string QueryPayTrade(AlipayTradeQueryInfo alipayTradeQueryInfo, SdkPay.Config config) { const string url = SdkPay.Config.ServerUrl; string appId = config.GetAppId(); string rivateKeyPem = config.GetPrivateKeyPem(); const string format = SdkPay.Config.Format; const string version = SdkPay.Config.Version; const string signType = SdkPay.Config.SignType; string publicKeyPem = config.GetPublicKeyPemAliPay(); const string charset = SdkPay.Config.Charset; IAopClient client = new DefaultAopClient(url, appId, rivateKeyPem, format, version, signType, publicKeyPem, charset, false); AlipayTradeQueryRequest request = new AlipayTradeQueryRequest(); AlipayTradeAppPayQueryModel model = new AlipayTradeAppPayQueryModel { out_trade_no = alipayTradeQueryInfo.OutTradeNo, trade_no = alipayTradeQueryInfo.TradeNo }; request.SetBizModel(model); AlipayTradeQueryResponse response = client.Execute(request); var body = response.Body; return(body); }