Dim client As Aop.Api.IAopClient = New Aop.Api.DefaultAopClient(strUrl,strAppID,strAppPrivateKey, "json", "1.0", "RSA2",strAlipayPublicKey, "GBK", False) '"utf-8"
Dim request As New Aop.Api.Request.AlipayDataBillAccountlogQueryRequest
----------------------------------------------------------------------------------------------------------------请转化成胡表的方法
以上句超出狐表知识,搞不定
===================================================以下我能搞定
Dim intPage As Integer=1
'创建传入参数
Dim jo As New JObject
jo("start_time")=dtBeginTime
jo("end_time")=dtEndTime
If strAlipay_order_no.Length>0 Then
jo("alipay_order_no")=strAlipay_order_no
End If
If strMerchant_order_no.Length>0 Then
jo("merchant_order_no")=strMerchant_order_no
End If
jo("page_size")=2000
Dim blnNotFinished As Boolean=True
===================================================以上我能搞定
-----------------------------------------------------------------------------------------------------------------------------------------下面的又涉及到高深莫测的代码了
Do While blnNotFinished
jo("page_no")=intPage
request.BizContent=jo.ToString
----------------------------------------------------------------------------------------------------------------------------------------请转换成狐表的方法
Dim response As Aop.Api.Response.AlipayDataBillAccountlogQueryResponse= client.pageExecute(request)
----------------------------------------------------------------------------------------------------------------------------------------请转换成狐表的方法
If response.Code="10000" Then '接口调用成功
If response.DetailList.Count>0 Then
'循环遍历所有清单
For Each lst As Aop.Api.Domain.AccountLogItemResult In response.DetailList
Dim dr As DataRow=DataTables("Alipay").AddNew '这里自己处理成自己的业务逻辑
dr("TransDt")=lst.TransDt '入账时间
dr("AccountLogId")=lst.AccountLogId '支付宝账务流水号.对账使用,不脱敏
dr("AlipayOrderNo")=lst.AlipayOrderNo '支付宝订单号.对账使用,不脱敏
dr("MerchantOrderNo")=lst.MerchantOrderNo '商户订单号,创建支付宝交易时传入的信息.对账使用,不脱敏
dr("TransAmount")=lst.TransAmount '金额
dr("Balance")=lst.Balance '余额,仅供参考.由于架构原因,余额变动并不保证连续.也就是余额不一定等于上一笔余额减去当笔金额.但是会保证最终一致.
dr("Type")=lst.Type '账务记录的类型,仅供参考
dr("OtherAccount")=lst.OtherAccount '对方账户
dr("TransMemo")=lst.TransMemo '账务备注.由上游业务决定,不可依赖此字段进行对账
dr("Direction")=lst.Direction '收入/支出.表示收支.amount是正数,返回"收入".amount是负数,返回"支出"
dr("BillSource")=lst.BillSource '业务账单来源,资金收支对应的上游业务订单数据来源,确认业务订单出处.此字段供商户对账使用,不脱敏.
dr("BizNos")=lst.BizNos '业务订单号,资金收支相关的业务场景订单号明细,字母大写;M:平台交易主单号,S:平台交易子单号,O:业务系统单据号(如退款订单号).此字段供商户对账使用,不脱敏.
dr("BizOrigNo")=lst.BizOrigNo '业务基础订单号,资金收支对应的原始业务订单唯一识别编号.此字段供商户对账使用,不脱敏.
dr("BizDesc")=lst.BizDesc '业务描述,资金收支对应的详细业务场景信息.此字段供商户对账使用,不脱敏.
Next
intPage=intPage+1
Else '如果返回的结果清单为空
blnNotFinished=False
End If
Else
MessageBox.Show(response.Msg & vbCrLf & "明细返回码描述:" & response.SubMsg)
Exit Do
End If
Loop