# README
bocBankSDK 接口 使用说明
关键文件 api.go
包含所有接口
调用步骤
- 构造 xml 请求头
NewXMLRequestHead
- 构造 xml 请求体
new(TrnB2e0009Rq)/或者别的
- 调用 HospitalPayment/或者别的 方法
接口添加说明
- 添加 request 和 response 结构体
- 位于 Modules/request.go
- 位于 Modules/response.go
- 额外添加 CompanyFactoringRspTrans 类似的结构体供传递给 interface
- 拆分 struct
添加 NewStruct 函数位于 ./request.go 中添加构造 request 的函数, 返回 类似 *Modules.TrnB2e0477Rq 的指针
- 添加 response case
- 位于 ./response.go 中
- 在 ParseResponseXML 方法 中添加新的 case
- opts 的 const 定义在 Modules/constant.go
case Modules.BOCB2E_OPTS_RAISE_REQUEST:
trans = &Modules.RaiseRequestRspTrans{}
- 添加 api.go 中暴露的方法
// RaiseRequest 提额申请 b2e0057
func RaiseRequest(bh *Modules.Head, trnRq *Modules.TrnB2e0057Rq) (*Modules.RaiseRequestRspTrans, error) {
xmlReqBytes, err := NewXMLRequest(bh, trnRq)
if err != nil {
return nil, err
}
in, err := doRequest(xmlReqBytes, Modules.BOCB2E_OPTS_RAISE_REQUEST)
if err != nil {
return nil, err
}
rsp, ok := in.(*Modules.RaiseRequestRspTrans)
if !ok {
return nil, errors.New("interface revert error")
}
// 错误响应码返回
if rsp.TrnB2e0057Rs.Status.Rspcod != Modules.BOCB2E_RESPONSE_CODE_OK {
return nil, errors.Errorf("RaiseRequest TRN error: code : %s, msg: %s",
rsp.TrnB2e0057Rs.Status.Rspcod, rsp.TrnB2e0057Rs.Status.Rspmsg)
}
if rsp.TrnB2e0057Rs.B2e0057Rs.Status.Rspcod != Modules.BOCB2E_RESPONSE_CODE_OK {
return nil, errors.Errorf("RaiseRequest B2E error: code : %s, msg: %s",
rsp.TrnB2e0057Rs.B2e0057Rs.Status.Rspcod, rsp.TrnB2e0057Rs.B2e0057Rs.Status.Rspmsg)
}
return rsp, nil
}
目录结构说明
.
├── api.go # 主接口文件
├── Modules # struct 定义
│ ├── bocB2eRoot.go # 上层结构体定义
│ ├── constant.go
│ ├── error.go # 错误返回 xml 定义
│ ├── head.go # xml head 定义(通用)
│ ├── request.go # 请求类型 xml 定义
│ └── response.go # 返回类型 xml 定义
├── go.mod
├── go.sum
├── javaDemo # java 示例文件夹
├── main_test.go
├── modules_test.go
├── README.md
├── request.go # 请求发起逻辑
├── response.go # 接收逻辑
├── response_test.go
├── rspError # error 接收中间件
│ └── error.go
├── util.go # 工具包
└── xmls # xml 定义源文件
├── b2e0009-req.xml
├── b2e0009-rsp.xml
├── b2e0477-req.xml
├── b2e0477-rsp.xml
├── b2e0481-req.xml
└── b2e0481-rsp.xml
[]: https://www.freeformatter.com/xml-formatter.html#ad-output
# Packages
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Functions
AccountTransactionsQuery 专户交易流水查询接口 b2e0035.
b2e0359 对账单下载const BOCB2E_OPTS_BALANCE_STATEMENT_DOWNLOAD = "BalanceStatementsDownloadRspTrans".
b2e0360 账单核对结果反馈const BOCB2E_OPTS_BALANCE_STATEMENT_FEEDBACK = "BalanceStatementsFeedbackRspTrans".
// b2e0358 对账服务-余额对账单查询const BOCB2E_OPTS_BALANCE_STATEMENT_QUERY = "BalanceStatementsQueryRspTrans".
No description provided by the author
b2e0043 联行号查询结果.
CompanyFactoring 企业保理接口 0477.
CompanyFactoringRepayment 配送企业专户偿还保理接口.
CompanyFactoringRepaymentNotice 保理订单偿还进度通知 b2e0486.
CompanyFactoringRepaymentResult 保理订单偿还进度查询 b2e0487.
FactoringResult 保理结果查询 b2e0483.
填平 b2e0232const BOCB2E_OPTS_FILL_UP = "fillUp".
从环境变量获取 银行的 URL.
HospitalAccountBalance 医疗机构专户余额接口 b2e0005const BOCB2E_OPTS_HOSPITAL_ACCOUNT_BALANCE = "hospitalAccountBalance".
HospitalPayment 医院付款接口 0009.
发票信息提交 b2e0080const BOCB2E_OPTS_INVOICE_SUBMIT = "invoiceSubmit".
No description provided by the author
No description provided by the author
构造请求 xml request.
NewXMLRequestHead 构造 统一 request XML bytes 头 <head></head>.
解析 oneStepAPI 返回.
付款申请 b2e0081const BOCB2E_OPTS_PAYMENT_REQUEST = "paymentRequest".
PaymentsQuery 支付结果查询 b2e0007.
RaiseRequest 提额申请 b2e0057.
回单下载 b2e0500const BOCB2E_OPTS_RECEIPT_DOWNLOAD.
TransferLimitQuery 限额查询 b2e0058.