以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [原创]求把VB.NET的原代码转化成狐表的代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=157244)

--  作者:redbule2
--  发布时间:2020/10/9 16:57:00
--  [原创]求把VB.NET的原代码转化成狐表的代码
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

--  作者:有点蓝
--  发布时间:2020/10/9 17:01:00
--  
上面这些VB.NET的代码foxtable直接就可以使用,不需要转换。
--  作者:redbule2
--  发布时间:2020/10/9 17:22:00
--  
我看不懂懂啊,我要对照文档,安装狐表的方法 请求接口,这样的代码,我根本不会用,也不敢换参数
--  作者:redbule2
--  发布时间:2020/10/9 17:24:00
--  
我要对照接口文档,按照狐表的方法 请求接口,如果不转化,我参数都不会换
--  作者:有点蓝
--  发布时间:2020/10/9 17:27:00
--  
这些代码foxtable直接就可以使用,如果不会用,估计是接口文档没看明白。完整接口文档和实例发上来看看