parent
							
								
									37b0ba231d
								
							
						
					
					
						commit
						b5c1b1be76
					
				
							
								
								
									
										76
									
								
								tysk.go
								
								
								
								
							
							
						
						
									
										76
									
								
								tysk.go
								
								
								
								
							| 
						 | 
					@ -145,7 +145,7 @@ func (g *Tysk) BatchPay(batchPayReq tysk_entity.BatchPayReq) (res tysk_entity.Ba
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (g *Tysk) BatchPayQuery(batchPayQueryReq tysk_entity.BatchPayQueryReq) (res tysk_entity.BatchPayQueryResp, err error) {
 | 
					func (g *Tysk) BatchPayQuery(batchPayQueryReq tysk_entity.BatchPayQueryReq) (res tysk_entity.BatchPayQueryResp, err error) {
 | 
				
			||||||
	err = g.handleRequest(tysk_constant.BatchPayQueryReq, g.handleReqStructToMap(batchPayQueryReq), &res)
 | 
						err = g.handleRequest(tysk_constant.BatchPayQuery, g.handleReqStructToMap(batchPayQueryReq), &res)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -153,9 +153,81 @@ func (g *Tysk) BatchPayQuery(batchPayQueryReq tysk_entity.BatchPayQueryReq) (res
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (g *Tysk) PayArrange(payArrangeReq tysk_entity.PayArrangeReq) (success bool, err error) {
 | 
					func (g *Tysk) PayArrange(payArrangeReq tysk_entity.PayArrangeReq) (success bool, err error) {
 | 
				
			||||||
	err = g.handleRequest(tysk_constant.PayArrangeReq, g.handleReqStructToMap(payArrangeReq), nil)
 | 
						err = g.handleRequest(tysk_constant.PayArrange, g.handleReqStructToMap(payArrangeReq), nil)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return true, nil
 | 
						return true, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) PayArrangeQuery(PayArrangeQueryReq tysk_entity.PayArrangeQueryReq) (res tysk_entity.PayArrangeQueryResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.PayArrangeQuery, g.handleReqStructToMap(PayArrangeQueryReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) PayArrangeBillQuery(PayArrangeBillQueryReq tysk_entity.PayArrangeBillQueryReq) (res tysk_entity.PayArrangeBillQueryResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.PayArrangeBillQuery, g.handleReqStructToMap(PayArrangeBillQueryReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) BatchesPayArrangeBillQuery(BatchesPayArrangeBillQueryReq tysk_entity.BatchesPayArrangeBillQueryReq) (res tysk_entity.BatchesPayArrangeBillQueryResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.BatchesPayArrangeBillQuery, g.handleReqStructToMap(BatchesPayArrangeBillQueryReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) TGBPay(TGBPayReq tysk_entity.TGBPayReq) (res tysk_entity.TGBPayResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.TGBPay, g.handleReqStructToMap(TGBPayReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) RefundTransQuery(RefundTransQueryReq tysk_entity.RefundTransQueryReq) (res tysk_entity.RefundTransQueryResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.RefundTransQuery, g.handleReqStructToMap(RefundTransQueryReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) BatchSalarySend(BatchSalarySendReq tysk_entity.BatchSalarySendReq) (res tysk_entity.BatchSalarySendResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.BatchSalarySend, g.handleReqStructToMap(BatchSalarySendReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) BankInfoQuery(BankInfoQuery tysk_entity.BankInfoQueryReq) (res tysk_entity.BankInfoQueryResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.BankInfoQuery, g.handleReqStructToMap(BankInfoQuery), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) BillList(BillListReq tysk_entity.BillListReq) (res tysk_entity.BillListResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.BillList, g.handleReqStructToMap(BillListReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (g *Tysk) BillDetail(BillDetailReq tysk_entity.BillDetailReq) (res tysk_entity.BillDetailResp, err error) {
 | 
				
			||||||
 | 
						err = g.handleRequest(tysk_constant.BillList, g.handleReqStructToMap(BillDetailReq), &res)
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,6 +9,8 @@ import (
 | 
				
			||||||
type TyskFacade interface {
 | 
					type TyskFacade interface {
 | 
				
			||||||
	Account //账户中心
 | 
						Account //账户中心
 | 
				
			||||||
	Settle  //结算中心
 | 
						Settle  //结算中心
 | 
				
			||||||
 | 
						Common  //公共中心
 | 
				
			||||||
 | 
						Bill    //票据中心
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -171,4 +173,95 @@ type Settle interface {
 | 
				
			||||||
	//5.若联动支付为是时,系统对应生成单笔或批量类型的联动支付排款任务。若未通过校验,则接口报错并提示“该账户无法支持联动支付”。
 | 
						//5.若联动支付为是时,系统对应生成单笔或批量类型的联动支付排款任务。若未通过校验,则接口报错并提示“该账户无法支持联动支付”。
 | 
				
			||||||
	//6.预算占用校验规则:若该排款请求根据配置需占用预算,则对预算占用事项进行校验,若未通过校验则返回错误及提示“无预算占用记录”,进行校验时,预算占用事项流水号(预算占用接口中“交易流水号”)需与本接口“外部排款流水号”保持一致。
 | 
						//6.预算占用校验规则:若该排款请求根据配置需占用预算,则对预算占用事项进行校验,若未通过校验则返回错误及提示“无预算占用记录”,进行校验时,预算占用事项流水号(预算占用接口中“交易流水号”)需与本接口“外部排款流水号”保持一致。
 | 
				
			||||||
	PayArrange(payArrangeReq tysk_entity.PayArrangeReq) (success bool, err error)
 | 
						PayArrange(payArrangeReq tysk_entity.PayArrangeReq) (success bool, err error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//PayArrangeQuery 排款查证
 | 
				
			||||||
 | 
						//企业ERP等系统调用该接口查询排款任务的执行情况。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.直联用户需在司库系统配置付方单位的查询权限。
 | 
				
			||||||
 | 
						//2.使用排款申请接口返回的原外部排款批次号来进行查证,将返回该笔排款任务拆分出的各笔付款任务状态。
 | 
				
			||||||
 | 
						//2.1 排款-单笔付款情况下进行查证,查证接口rows标签下不根据未支付金额返回付款金额与之相同的未排期明细数据。
 | 
				
			||||||
 | 
						//2.2 排款-批量付款情况下进行查证,查证接口rows标签下不会返回未排期的付款数据。
 | 
				
			||||||
 | 
						//3.当结算方式为银承开票、商承开票、银承转让或商承转让时,返回相关的票据汇总信息。
 | 
				
			||||||
 | 
						//4.当结算方式为现金支票、转账支票、银行保函、信用证、其他时,子任务状态为“支付成功”时,返回线下付款日期。
 | 
				
			||||||
 | 
						PayArrangeQuery(PayArrangeQueryReq tysk_entity.PayArrangeQueryReq) (res tysk_entity.PayArrangeQueryResp, err error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//PayArrangeBillQuery 排款票据信息查询
 | 
				
			||||||
 | 
						//用于查询排款结算方式为银承开票、商承开票、银承转让或商承转让时,司库系统接收该请求。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.直联用户需在司库系统配置付方单位的查询权限,[公共中心]-[用户权限管理]-[机构权限设置]进行维护。
 | 
				
			||||||
 | 
						//2.接口支持一次最大20条;
 | 
				
			||||||
 | 
						//3.使用排款申请接口返回的原外部排款批次号、子任务编号来进行查证,将按子任务号或外部排款批次号得查询结果返回票据信息。
 | 
				
			||||||
 | 
						//4.当调用排款查证接口返回子任务的结算方式为银承开票、商承开票、银承转让或商承转让时使用。
 | 
				
			||||||
 | 
						PayArrangeBillQuery(PayArrangeBillQueryReq tysk_entity.PayArrangeBillQueryReq) (res tysk_entity.PayArrangeBillQueryResp, err error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//BatchesPayArrangeBillQuery 3.2.8多批次排款票据查询
 | 
				
			||||||
 | 
						//用于查询排款结算方式为银承开票、商承开票、银承转让或商承转让时,司库系统接收该请求。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.直联用户需在司库系统配置付方单位的查询权限,[公共中心]-[用户权限管理]-[机构权限设置]进行维护。
 | 
				
			||||||
 | 
						//2.接口支持一次最大100条;
 | 
				
			||||||
 | 
						//3.使用排款申请接口返回的原外部排款批次号、子任务编号来进行查证,将按子任务号或外部排款批次号得查询结果返回票据信息。
 | 
				
			||||||
 | 
						//4.当调用排款查证接口返回子任务的结算方式为银承开票、商承开票、银承转让或商承转让时使用。
 | 
				
			||||||
 | 
						BatchesPayArrangeBillQuery(BatchesPayArrangeBillQueryReq tysk_entity.BatchesPayArrangeBillQueryReq) (res tysk_entity.BatchesPayArrangeBillQueryResp, err error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//TGBPay 3.2.9团金宝付款
 | 
				
			||||||
 | 
						//用于发起团金宝交易,支持落地经办、提交审批、直接付款三种模式,用户可以根据设置信息选择业务处理模式。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.外部请求批次号不能重复,包括批量付款、团金宝交易
 | 
				
			||||||
 | 
						//2.操作人必须有ERP团金宝业务权限、付款账户操作权限
 | 
				
			||||||
 | 
						//3.收款信息最大支持1000笔
 | 
				
			||||||
 | 
						//4.仅支持人民币交易
 | 
				
			||||||
 | 
						//5.在司库中按照如下业务模式参数进行处理:
 | 
				
			||||||
 | 
						//1)审批处理,ERP传输的单据,直接到流程中心-待审批任务;
 | 
				
			||||||
 | 
						//2) 直接出账,只走司库接口,单据可在团金宝/薪酬代发查询功能查询;
 | 
				
			||||||
 | 
						//3)经办处理时,团金宝经办页面进行后续操作
 | 
				
			||||||
 | 
						//6.若选择联动支付,增加权限校验,校验付方账号必须是资金池成员账号且开通联动下拨功能,若该账户支持联动支付,资金会先从核心账户转入该支付账户中进行支付,资金下拨结果可在【多笔付款查证】接口中进行查看;
 | 
				
			||||||
 | 
						TGBPay(TGBPayReq tysk_entity.TGBPayReq) (res tysk_entity.TGBPayResp, err error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//RefundTransQuery 3.2.9团金宝付款
 | 
				
			||||||
 | 
						//用于查询状态已标识为“已退汇”的支付单据,包括本地制单、ERP来源、排款来源以及各渠道来源的单笔付款、批量付款、薪酬支付、费用报销、付款计划、用款申请交易。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.接口支持一次最大20条,日期最大范围为当日T-1前90天内的交易;
 | 
				
			||||||
 | 
						//2.请求使用的银企直联用户必须有ERP退汇业务权限、付款账户查询权限;
 | 
				
			||||||
 | 
						//3.退汇交易查询支持自动退汇和手工退汇交易查询,其中自动退汇交易查询银行范围包括:中信银行、招商银行、平安银行退汇情况的交易查询。
 | 
				
			||||||
 | 
						//4.付款类型是“团金宝”业务,仅支持单笔记账方式的退汇明细查询。
 | 
				
			||||||
 | 
						RefundTransQuery(RefundTransQueryReq tysk_entity.RefundTransQueryReq) (res tysk_entity.RefundTransQueryResp, err error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//BatchSalarySend 3.2.11批量代发(薪酬代发)
 | 
				
			||||||
 | 
						//该接口用于发起薪酬代发申请,调用该接口推送请求,司库系统接收该请求后生成薪酬代发的申请任务,并返回受理状态。受理成功后,客户需依据司库系统配置的审批流程参数及工作流,完成司库系统的审批流转。待审批通过后,系统自动执行付款交易指令,用户可通过批量付款/团金宝查证交易进行交易状态的查询。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.本交易为一借多贷模式,1个付方账号,多个收方账号;
 | 
				
			||||||
 | 
						//2.付方账号需提前在司库系统内维护为直联账户并为直联用户赋予薪酬代发支付权限及付方单位的机构权限;
 | 
				
			||||||
 | 
						//3.接口调用后立即返回司库受理状态,此状态只表示交易请求是否受理,若校验通过该笔付款将进入【司库系统】-【结算中心】-【薪酬代发】功能,支付是否成功需稍后使用多笔查证交易进行查询。
 | 
				
			||||||
 | 
						//4.在司库中按照如下业务模式参数进行处理:
 | 
				
			||||||
 | 
						//1)审批处理,ERP传输的单据,直接到流程中心-待审批任务;
 | 
				
			||||||
 | 
						//2)直接出账,只走司库接口,单据可在薪酬代发查询功能查询;
 | 
				
			||||||
 | 
						//3)经办处理时,需要在司库公共中心进行流程配置,薪酬代发经办页面进行后续操作。
 | 
				
			||||||
 | 
						//5.若该账户支持联动支付,资金会先从核心账户转入该支付账户中进行支付,资金下拨结果可在【批量付款查证】接口中进行查看;
 | 
				
			||||||
 | 
						BatchSalarySend(BatchSalarySendReq tysk_entity.BatchSalarySendReq) (res tysk_entity.BatchSalarySendResp, err error)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type Common interface {
 | 
				
			||||||
 | 
						//BankInfoQuery 3.3.1境内银行网点信息查询
 | 
				
			||||||
 | 
						//用于查询境内银行网点信息查询,企业调用该接口查询网点请求,司库系统接收该请求后返回境内银行网点信息,支持分页查询,参数为银行编号和区域编码ID(详见附件),银行编码和区域编码不能同时都为空。
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.当前支持境内银行网点信息查询,含外资行境内网点;
 | 
				
			||||||
 | 
						//2.银行编码和区域码详见【附录5.9-银行编码信息和区域信息V1.0】,查询时这两个参数不能同时为空;
 | 
				
			||||||
 | 
						//3.支持分页查询;
 | 
				
			||||||
 | 
						BankInfoQuery(BankInfoQuery tysk_entity.BankInfoQueryReq) (res tysk_entity.BankInfoQueryResp, err error)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type Bill interface {
 | 
				
			||||||
 | 
						//BillList 3.4.1票据列表查询
 | 
				
			||||||
 | 
						//企业ERP等系统调用该接口发起票据信息查询,支持持有票据、票据行为申请、票据行为签收三类场景,司库系统接收该请求后返回对应的票据信息,查询结果按照【账号】+【票据包号】+【子票区间】进行去重。
 | 
				
			||||||
 | 
						//持有票据:选择该条件进行查询可以列表展示指客户当前持有的票据
 | 
				
			||||||
 | 
						//票据行为申请:选择该条件(支持全选或复选)可以查询客户发起过对应申请行为的票据
 | 
				
			||||||
 | 
						//票据行为签收:选择该条件(支持全选或复选)可以查询客户发起过对应签收行为的票据
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.请求使用的银企直联用户需有相关账号的查询权限	;
 | 
				
			||||||
 | 
						//2.该交易使用分页查询,起始记录号从1开始,每页最多显示200条记录。
 | 
				
			||||||
 | 
						BillList(BillListReq tysk_entity.BillListReq) (res tysk_entity.BillListResp, err error)
 | 
				
			||||||
 | 
						//BillDetail 3.4.2票据详情查询
 | 
				
			||||||
 | 
						// 注意事项:
 | 
				
			||||||
 | 
						//1.当输入账号进行查询时,系统需校验用户对票据所属的账号具有查询权限;
 | 
				
			||||||
 | 
						BillDetail(BillDetailReq tysk_entity.BillDetailReq) (res tysk_entity.BillDetailResp, err error)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -272,3 +272,41 @@ var SettlementModeMap = map[SettlementMode]string{
 | 
				
			||||||
	SettlementModeProjectLoan:   "项目贷支付",
 | 
						SettlementModeProjectLoan:   "项目贷支付",
 | 
				
			||||||
	SettlementModeOther:         "其他",
 | 
						SettlementModeOther:         "其他",
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type ItlgPreparType string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const (
 | 
				
			||||||
 | 
						ItlgPreparTypeSingle = "0"
 | 
				
			||||||
 | 
						ItlgPreparTypeBatch  = "1"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var ItlgPreparTypeMap = map[ItlgPreparType]string{
 | 
				
			||||||
 | 
						ItlgPreparTypeSingle: "单笔记账",
 | 
				
			||||||
 | 
						ItlgPreparTypeBatch:  "合笔记账",
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type ItlgRefundFlag string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const (
 | 
				
			||||||
 | 
						ItlgRefundFlagSingle = "0"
 | 
				
			||||||
 | 
						ItlgRefundFlagBatch  = "1"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var ItlgRefundFlagMap = map[ItlgRefundFlag]string{
 | 
				
			||||||
 | 
						ItlgPreparTypeSingle: "单笔退款",
 | 
				
			||||||
 | 
						ItlgPreparTypeBatch:  "合并退款",
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type QueryType string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const (
 | 
				
			||||||
 | 
						QueryTypeHad   = "00"
 | 
				
			||||||
 | 
						QueryTypeApply = "01"
 | 
				
			||||||
 | 
						QueryTypeRec   = "02"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var QueryTypeMap = map[QueryType]string{
 | 
				
			||||||
 | 
						QueryTypeHad:   "持有",
 | 
				
			||||||
 | 
						QueryTypeApply: "申请",
 | 
				
			||||||
 | 
						QueryTypeRec:   "签收",
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,8 +17,17 @@ const (
 | 
				
			||||||
	SinglePay                  RequestCode = "SKDLTTRN"
 | 
						SinglePay                  RequestCode = "SKDLTTRN"
 | 
				
			||||||
	SinglePayQuery             RequestCode = "SKDLBATD"
 | 
						SinglePayQuery             RequestCode = "SKDLBATD"
 | 
				
			||||||
	BatchPay                   RequestCode = "SKDLPAAT"
 | 
						BatchPay                   RequestCode = "SKDLPAAT"
 | 
				
			||||||
	BatchPayQueryReq      RequestCode = "SKDLBATC"
 | 
						BatchPayQuery              RequestCode = "SKDLBATC"
 | 
				
			||||||
	PayArrangeReq         RequestCode = "SKDLFNMA"
 | 
						PayArrange                 RequestCode = "SKDLFNMA"
 | 
				
			||||||
 | 
						PayArrangeQuery            RequestCode = "SKDLBAFN"
 | 
				
			||||||
 | 
						PayArrangeBillQuery        RequestCode = "SKDLBLNF"
 | 
				
			||||||
 | 
						BatchesPayArrangeBillQuery RequestCode = "SKDLBLNG"
 | 
				
			||||||
 | 
						TGBPay                     RequestCode = "SKDLITLG"
 | 
				
			||||||
 | 
						RefundTransQuery           RequestCode = "SKQRRTAN"
 | 
				
			||||||
 | 
						BatchSalarySend            RequestCode = "SKDLPYCD"
 | 
				
			||||||
 | 
						BankInfoQuery              RequestCode = "SKPUBQLH"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						BillList RequestCode = "SKBILINF"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type ResponseCode string
 | 
					type ResponseCode string
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,8 +8,8 @@ type (
 | 
				
			||||||
	AccountList []tysk_constant.AccountNo
 | 
						AccountList []tysk_constant.AccountNo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	Page struct {
 | 
						Page struct {
 | 
				
			||||||
		StartRecord int32 `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
 | 
							StartRecord int `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
 | 
				
			||||||
		PageNumber  int32 `json:"pageNumber"`  //每次查询请求的记录数量,最多支持100条记录
 | 
							PageNumber  int `json:"pageNumber"`  //每次查询请求的记录数量,最多支持100条记录
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	GetAccountBalanceReq struct {
 | 
						GetAccountBalanceReq struct {
 | 
				
			||||||
| 
						 | 
					@ -19,13 +19,13 @@ type (
 | 
				
			||||||
	TodayTransHisReq struct {
 | 
						TodayTransHisReq struct {
 | 
				
			||||||
		AccountNo   AccountList            `json:"userDataList.accountNo"`
 | 
							AccountNo   AccountList            `json:"userDataList.accountNo"`
 | 
				
			||||||
		TranType    tysk_constant.TranType `json:"tranType"`    //01:所有 02:账户支出(借) 03:账户收入(贷)
 | 
							TranType    tysk_constant.TranType `json:"tranType"`    //01:所有 02:账户支出(借) 03:账户收入(贷)
 | 
				
			||||||
		StartRecord int32                  `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
 | 
							StartRecord int                    `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
 | 
				
			||||||
		PageNumber  int32                  `json:"pageNumber"`  //每次查询请求的记录数量,最多支持100条记录
 | 
							PageNumber  int                    `json:"pageNumber"`  //每次查询请求的记录数量,最多支持100条记录
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	AccountInfoReq struct {
 | 
						AccountInfoReq struct {
 | 
				
			||||||
		StartRecord   int32                        `json:"startRecord"`             //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
 | 
							StartRecord   int                          `json:"startRecord"`             //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
 | 
				
			||||||
		PageNumber    int32                        `json:"pageNumber"`              //每次查询请求的记录数量,最多支持100条记录
 | 
							PageNumber    int                          `json:"pageNumber"`              //每次查询请求的记录数量,最多支持100条记录
 | 
				
			||||||
		BlngBnkId     *tysk_constant.BankCode      `json:"blngBnkId,omitempty"`     //所属银行
 | 
							BlngBnkId     *tysk_constant.BankCode      `json:"blngBnkId,omitempty"`     //所属银行
 | 
				
			||||||
		AccCgyId      *tysk_constant.AccCgyId      `json:"tranType,omitempty"`      //账户性质(原:账户类型),1:一般账户 2:基本账户 3:专用账户 4:临时账户,默认为全部
 | 
							AccCgyId      *tysk_constant.AccCgyId      `json:"tranType,omitempty"`      //账户性质(原:账户类型),1:一般账户 2:基本账户 3:专用账户 4:临时账户,默认为全部
 | 
				
			||||||
		AccTpId       *tysk_constant.AccTpId       `json:"accTpId,omitempty"`       //存款类型(原:账户种类),1:活期 2:定期 3:通知 4:活期保证金 5:定期保证金,默认为全部
 | 
							AccTpId       *tysk_constant.AccTpId       `json:"accTpId,omitempty"`       //存款类型(原:账户种类),1:活期 2:定期 3:通知 4:活期保证金 5:定期保证金,默认为全部
 | 
				
			||||||
| 
						 | 
					@ -50,8 +50,8 @@ type (
 | 
				
			||||||
		StartDate   string                 `json:"startDate,omitempty" comment:"查询起始日期"`                            // 查询开始日期(char(8),选填,yyyyMMdd格式,默认取申请单起始日期,与结束日期间隔≤30天)
 | 
							StartDate   string                 `json:"startDate,omitempty" comment:"查询起始日期"`                            // 查询开始日期(char(8),选填,yyyyMMdd格式,默认取申请单起始日期,与结束日期间隔≤30天)
 | 
				
			||||||
		EndDate     string                 `json:"endDate,omitempty" comment:"查询结束日期"`                              // 查询结束日期(char(8),选填,yyyyMMdd格式,默认取申请单结束日期,与开始日期间隔≤30天)
 | 
							EndDate     string                 `json:"endDate,omitempty" comment:"查询结束日期"`                              // 查询结束日期(char(8),选填,yyyyMMdd格式,默认取申请单结束日期,与开始日期间隔≤30天)
 | 
				
			||||||
		TranType    tysk_constant.TranType `json:"tranType,omitempty" comment:"交易类型"`                               // 交易类型(char(2),选填:01-全部交易/02-账户支出/03-账户收入)
 | 
							TranType    tysk_constant.TranType `json:"tranType,omitempty" comment:"交易类型"`                               // 交易类型(char(2),选填:01-全部交易/02-账户支出/03-账户收入)
 | 
				
			||||||
		StartRecord int32                  `json:"startRecord" comment:"起始记录号" validate:"required,numeric,min=1"`   // 查询起始记录编号(char(4),必填,从1开始)
 | 
							StartRecord int                    `json:"startRecord" comment:"起始记录号" validate:"required,numeric,min=1"`   // 查询起始记录编号(char(4),必填,从1开始)
 | 
				
			||||||
		PageNumber  int32                  `json:"pageNumber" comment:"请求记录条数" validate:"required,numeric,max=100"` // 每页记录数(char(4),必填,最大100条)
 | 
							PageNumber  int                    `json:"pageNumber" comment:"请求记录条数" validate:"required,numeric,max=100"` // 每页记录数(char(4),必填,最大100条)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// ReceiptDownloadReq 银企直联接口请求参数
 | 
						// ReceiptDownloadReq 银企直联接口请求参数
 | 
				
			||||||
| 
						 | 
					@ -74,8 +74,8 @@ type (
 | 
				
			||||||
		StartDate   *string                `json:"startDate,omitempty" comment:"起始日期" validate:"omitempty,len=8,datetime=20060102"` // 查询开始日期(char(8),选填,yyyyMMdd格式,默认取SKTRNHCL输入的起始日期)
 | 
							StartDate   *string                `json:"startDate,omitempty" comment:"起始日期" validate:"omitempty,len=8,datetime=20060102"` // 查询开始日期(char(8),选填,yyyyMMdd格式,默认取SKTRNHCL输入的起始日期)
 | 
				
			||||||
		EndDate     *string                `json:"endDate,omitempty" comment:"终止日期" validate:"omitempty,len=8,datetime=20060102"`   // 查询结束日期(char(8),选填,yyyyMMdd格式,默认取SKTRNHCL输入的终止日期)
 | 
							EndDate     *string                `json:"endDate,omitempty" comment:"终止日期" validate:"omitempty,len=8,datetime=20060102"`   // 查询结束日期(char(8),选填,yyyyMMdd格式,默认取SKTRNHCL输入的终止日期)
 | 
				
			||||||
		TranType    tysk_constant.TranType `json:"tranType" comment:"交易类型" validate:"required,oneof=01 02 03"`                      // 交易类型(char(2),必填:01-全部交易/02-账户支出/03-账户收入)
 | 
							TranType    tysk_constant.TranType `json:"tranType" comment:"交易类型" validate:"required,oneof=01 02 03"`                      // 交易类型(char(2),必填:01-全部交易/02-账户支出/03-账户收入)
 | 
				
			||||||
		StartRecord int32                  `json:"startRecord" comment:"起始记录号" validate:"required,len=4,numeric"`                   // 查询起始记录编号(char(4),必填,从1开始)
 | 
							StartRecord int                    `json:"startRecord" comment:"起始记录号" validate:"required,len=4,numeric"`                   // 查询起始记录编号(char(4),必填,从1开始)
 | 
				
			||||||
		PageNumber  int32                  `json:"pageNumber" comment:"请求记录条数" validate:"required,len=4,numeric,max=100"`           // 每页记录数(char(4),必填,最大100条)
 | 
							PageNumber  int                    `json:"pageNumber" comment:"请求记录条数" validate:"required,len=4,numeric,max=100"`           // 每页记录数(char(4),必填,最大100条)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// BalanceHisQueryApplyReq 历史余额查询申请
 | 
						// BalanceHisQueryApplyReq 历史余额查询申请
 | 
				
			||||||
| 
						 | 
					@ -91,8 +91,8 @@ type (
 | 
				
			||||||
		ClientID    string  `json:"clientID" comment:"记录申请编号" validate:"required,len=20,alphanum"`                                    // 客户查询自定义的流水号(char(20),必填,仅支持数字或字母组合)
 | 
							ClientID    string  `json:"clientID" comment:"记录申请编号" validate:"required,len=20,alphanum"`                                    // 客户查询自定义的流水号(char(20),必填,仅支持数字或字母组合)
 | 
				
			||||||
		StartDate   *string `json:"startDate,omitempty" comment:"起始日期" validate:"omitempty,len=8,datetime=20060102,balanceDateRange"` // 查询余额范围的开始日期(char(8),选填,yyyyMMdd格式)
 | 
							StartDate   *string `json:"startDate,omitempty" comment:"起始日期" validate:"omitempty,len=8,datetime=20060102,balanceDateRange"` // 查询余额范围的开始日期(char(8),选填,yyyyMMdd格式)
 | 
				
			||||||
		EndDate     *string `json:"endDate,omitempty" comment:"终止日期" validate:"omitempty,len=8,datetime=20060102,balanceDateRange"`   // 查询余额范围的结束日期(char(8),选填,yyyyMMdd格式)
 | 
							EndDate     *string `json:"endDate,omitempty" comment:"终止日期" validate:"omitempty,len=8,datetime=20060102,balanceDateRange"`   // 查询余额范围的结束日期(char(8),选填,yyyyMMdd格式)
 | 
				
			||||||
		StartRecord int32   `json:"startRecord" comment:"起始记录号" validate:"required,len=4,numeric"`                                    // 查询开始的记录编号(char(4),必填,从1开始)
 | 
							StartRecord int     `json:"startRecord" comment:"起始记录号" validate:"required,len=4,numeric"`                                    // 查询开始的记录编号(char(4),必填,从1开始)
 | 
				
			||||||
		PageNumber  int32   `json:"pageNumber" comment:"请求记录条数" validate:"required,len=4,numeric,max=20"`                             // 每次查询请求的记录数量(char(4),必填,最多支持20条记录)
 | 
							PageNumber  int     `json:"pageNumber" comment:"请求记录条数" validate:"required,len=4,numeric,max=20"`                             // 每次查询请求的记录数量(char(4),必填,最多支持20条记录)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// AccountsTransHisQueryReq 多账户历史明细查询
 | 
						// AccountsTransHisQueryReq 多账户历史明细查询
 | 
				
			||||||
| 
						 | 
					@ -100,8 +100,8 @@ type (
 | 
				
			||||||
		StartDate   string                 `json:"startDate" validate:"required,len=8,datetime=20060102,dateRange"` // 起始日期(char(8),必填,yyyyMMdd格式)
 | 
							StartDate   string                 `json:"startDate" validate:"required,len=8,datetime=20060102,dateRange"` // 起始日期(char(8),必填,yyyyMMdd格式)
 | 
				
			||||||
		EndDate     string                 `json:"endDate" validate:"required,len=8,datetime=20060102,dateRange"`   // 终止日期(char(8),必填,yyyyMMdd格式)
 | 
							EndDate     string                 `json:"endDate" validate:"required,len=8,datetime=20060102,dateRange"`   // 终止日期(char(8),必填,yyyyMMdd格式)
 | 
				
			||||||
		TranType    tysk_constant.TranType `json:"tranType" validate:"required,len=2,oneof=01 02 03"`               // 借贷方向(char(2),必填:01-全部交易;02-借;03-贷)
 | 
							TranType    tysk_constant.TranType `json:"tranType" validate:"required,len=2,oneof=01 02 03"`               // 借贷方向(char(2),必填:01-全部交易;02-借;03-贷)
 | 
				
			||||||
		StartRecord int32                  `json:"startRecord" validate:"required,len=4,numeric,min=1"`             // 起始记录号(char(4),必填,从1开始)
 | 
							StartRecord int                    `json:"startRecord" validate:"required,len=4,numeric,min=1"`             // 起始记录号(char(4),必填,从1开始)
 | 
				
			||||||
		PageNumber  int32                  `json:"pageNumber" validate:"required,len=4,numeric,max=100"`            // 请求记录条数(char(4),必填,最多100条)
 | 
							PageNumber  int                    `json:"pageNumber" validate:"required,len=4,numeric,max=100"`            // 请求记录条数(char(4),必填,最多100条)
 | 
				
			||||||
		AccountNo   AccountList            `json:"userDataList.accountNo" validate:"required,dive"`                 // 账号列表(必填,最多10个账号)
 | 
							AccountNo   AccountList            `json:"userDataList.accountNo" validate:"required,dive"`                 // 账号列表(必填,最多10个账号)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -109,8 +109,8 @@ type (
 | 
				
			||||||
	SinglePayReq struct {
 | 
						SinglePayReq struct {
 | 
				
			||||||
		ExternalNum             string                                 `json:"externalNum" comment:"外部请求流水号" validate:"required,max=50"`                                    // 最大长度为50,不能重复
 | 
							ExternalNum             string                                 `json:"externalNum" comment:"外部请求流水号" validate:"required,max=50"`                                    // 最大长度为50,不能重复
 | 
				
			||||||
		LinkPayFlag             *tysk_constant.CommonBool              `json:"linkPayFlag,omitempty" comment:"联动支付" validate:"omitempty,oneof=00 01"`                       // 00:否,01:是 默认为否
 | 
							LinkPayFlag             *tysk_constant.CommonBool              `json:"linkPayFlag,omitempty" comment:"联动支付" validate:"omitempty,oneof=00 01"`                       // 00:否,01:是 默认为否
 | 
				
			||||||
		PypPartyAccnum          string                                 `json:"pypartyAccnum" comment:"付方账号" validate:"required,max=32,accountFormat"`                       // 允许输入特定字符,至少一个数字
 | 
							PypPartyAccnum          tysk_constant.AccountNo                `json:"pypartyAccnum" comment:"付方账号" validate:"required,max=32,accountFormat"`                       // 允许输入特定字符,至少一个数字
 | 
				
			||||||
		RcvPyAccnum             string                                 `json:"rcvpyAccnum" comment:"收方账号" validate:"required,max=32,accountFormat"`                         // 允许输入特定字符,至少一个数字
 | 
							RcvPyAccnum             tysk_constant.AccountNo                `json:"rcvpyAccnum" comment:"收方账号" validate:"required,max=32,accountFormat"`                         // 允许输入特定字符,至少一个数字
 | 
				
			||||||
		RcvPyAccnm              string                                 `json:"rcvpyAccnm" comment:"收方户名" validate:"required,max=300,nameFormat"`                            // 最大支持长度300(汉字占3,非汉字占1)
 | 
							RcvPyAccnm              string                                 `json:"rcvpyAccnm" comment:"收方户名" validate:"required,max=300,nameFormat"`                            // 最大支持长度300(汉字占3,非汉字占1)
 | 
				
			||||||
		IsCheckRcvpartyDepbnkId *tysk_constant.IsCheckRcvpartyDepbnkId `json:"isCheckRcvpartyDepbnkId,omitempty" comment:"是否准确校验开户行行名" validate:"omitempty,oneof=00 01"`    // 00:是  01:否     默认为是 当该字段为00是时:同时传入开户行行名和联行号,以联行号为准; 当该字段为01否时:同时传入开户行行名和联行号,以联行号为准;只传入开户行行名直接返显开户行,不再校验开户行行名在境内网点表是否存在,若用户上送的开户行行名匹配不上所属银行,则【收方银行】展示--,【是否跨行】字段,若用户上送,则以用户上送的为准,若用户未上送,收方银行为空,则无法按照收付方银行判断出是否跨行,则是否跨行默认为是;若用户上送的开户行行名匹配不出联行号时,则【收方联行号】、【收方地区】展示为--;只传入联行号,以联行号为准。
 | 
							IsCheckRcvpartyDepbnkId *tysk_constant.IsCheckRcvpartyDepbnkId `json:"isCheckRcvpartyDepbnkId,omitempty" comment:"是否准确校验开户行行名" validate:"omitempty,oneof=00 01"`    // 00:是  01:否     默认为是 当该字段为00是时:同时传入开户行行名和联行号,以联行号为准; 当该字段为01否时:同时传入开户行行名和联行号,以联行号为准;只传入开户行行名直接返显开户行,不再校验开户行行名在境内网点表是否存在,若用户上送的开户行行名匹配不上所属银行,则【收方银行】展示--,【是否跨行】字段,若用户上送,则以用户上送的为准,若用户未上送,收方银行为空,则无法按照收付方银行判断出是否跨行,则是否跨行默认为是;若用户上送的开户行行名匹配不出联行号时,则【收方联行号】、【收方地区】展示为--;只传入联行号,以联行号为准。
 | 
				
			||||||
		RcvPartyDepbnkId        *string                                `json:"rcvpartyDepbnkId,omitempty" comment:"收方开户行" validate:"omitempty,max=80"`                      // 收方开户行 ,收方开户行和收方联行号选择一个输入即可 付款种类对私付款且账户为银联卡时,可根据卡BIN号识别收方开户行、收方联行号字段,两字段不必输,非空情况以上送值为准
 | 
							RcvPartyDepbnkId        *string                                `json:"rcvpartyDepbnkId,omitempty" comment:"收方开户行" validate:"omitempty,max=80"`                      // 收方开户行 ,收方开户行和收方联行号选择一个输入即可 付款种类对私付款且账户为银联卡时,可根据卡BIN号识别收方开户行、收方联行号字段,两字段不必输,非空情况以上送值为准
 | 
				
			||||||
| 
						 | 
					@ -140,9 +140,9 @@ type (
 | 
				
			||||||
	BatchPayReq struct {
 | 
						BatchPayReq struct {
 | 
				
			||||||
		ExternalBatNum string                    `json:"externalBatNum" validate:"required,max=30"`                          // 外部请求批次号
 | 
							ExternalBatNum string                    `json:"externalBatNum" validate:"required,max=30"`                          // 外部请求批次号
 | 
				
			||||||
		LinkPayFlag    *tysk_constant.CommonBool `json:"linkPayFlag,omitempty" validate:"omitempty,oneof=00 01"`             // 联动支付标志
 | 
							LinkPayFlag    *tysk_constant.CommonBool `json:"linkPayFlag,omitempty" validate:"omitempty,oneof=00 01"`             // 联动支付标志
 | 
				
			||||||
		PyPartyAccNum  string                    `json:"pypartyAccnum" validate:"required,max=32,account"`                   // 付方账号
 | 
							PyPartyAccNum  tysk_constant.AccountNo   `json:"pypartyAccnum" validate:"required,max=32,account"`                   // 付方账号
 | 
				
			||||||
		CurrencyID     string                    `json:"currencyID" validate:"required,oneof=CNY"`                           // 币种(只支持CNY)
 | 
							CurrencyID     string                    `json:"currencyID" validate:"required,oneof=CNY"`                           // 币种(只支持CNY)
 | 
				
			||||||
		TotNbr         string                    `json:"totNbr" validate:"required,len=4,numeric,max=1000"`                  // 付款总笔数
 | 
							TotNbr         int                       `json:"totNbr" validate:"required,len=4,numeric,max=1000"`                  // 付款总笔数
 | 
				
			||||||
		Amt            float64                   `json:"amt" validate:"required,numeric,len=15"`                             // 付款总金额(decimal(15,2))
 | 
							Amt            float64                   `json:"amt" validate:"required,numeric,len=15"`                             // 付款总金额(decimal(15,2))
 | 
				
			||||||
		UrgntAprvFlag  *tysk_constant.CommonBool `json:"urgntAprvFlag,omitempty" validate:"required,oneof=00 01"`            // 00:否,01:是 默认为否
 | 
							UrgntAprvFlag  *tysk_constant.CommonBool `json:"urgntAprvFlag,omitempty" validate:"required,oneof=00 01"`            // 00:否,01:是 默认为否
 | 
				
			||||||
		RsrvtnFlag     *tysk_constant.CommonBool `json:"rsrvtnFlag,omitempty" validate:"required,oneof=00 01"`               //  00:否 01:是 默认为否,是否预约付款状态为01,预约时间必填
 | 
							RsrvtnFlag     *tysk_constant.CommonBool `json:"rsrvtnFlag,omitempty" validate:"required,oneof=00 01"`               //  00:否 01:是 默认为否,是否预约付款状态为01,预约时间必填
 | 
				
			||||||
| 
						 | 
					@ -151,11 +151,10 @@ type (
 | 
				
			||||||
		List           []BatchPayList            `json:"debitList" validate:"required,dive"`                                 // 付款明细列表
 | 
							List           []BatchPayList            `json:"debitList" validate:"required,dive"`                                 // 付款明细列表
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// PaymentDetail 单笔付款明细
 | 
					 | 
				
			||||||
	BatchPayList struct {
 | 
						BatchPayList struct {
 | 
				
			||||||
		ExternalNum             string                                 `json:"externalNum" validate:"required,max=50"`                             // 外部请求流水号
 | 
							ExternalNum             string                                 `json:"externalNum" validate:"required,max=50"`                             // 外部请求流水号
 | 
				
			||||||
		RcvPyAccNum             string                                 `json:"rcvpyAccnum" validate:"required,max=32,account"`                     // 收方账号
 | 
							RcvPyAccNum             tysk_constant.AccountNo                `json:"rcvpyAccnum" validate:"required,max=32,account"`                     // 收方账号
 | 
				
			||||||
		RcvPyAccNm              string                                 `json:"rcvpyAccnm" validate:"required,max=300,name"`                        // 收方户名
 | 
							RcvPyAccNm              tysk_constant.AccountNo                `json:"rcvpyAccnm" validate:"required,max=300,name"`                        // 收方户名
 | 
				
			||||||
		IsInterBnk              *tysk_constant.CommonBool              `json:"isInterbnk,omitempty" validate:"omitempty,oneof=00 01"`              // 是否跨行
 | 
							IsInterBnk              *tysk_constant.CommonBool              `json:"isInterbnk,omitempty" validate:"omitempty,oneof=00 01"`              // 是否跨行
 | 
				
			||||||
		IsCheckRcvPartyDepBnkId *tysk_constant.IsCheckRcvpartyDepbnkId `json:"isCheckRcvpartyDepbnkId,omitempty" validate:"omitempty,oneof=00 01"` // 是否准确校验开户行行名 00:是 01:否 默认为是, 当该字段为00是时:
 | 
							IsCheckRcvPartyDepBnkId *tysk_constant.IsCheckRcvpartyDepbnkId `json:"isCheckRcvpartyDepbnkId,omitempty" validate:"omitempty,oneof=00 01"` // 是否准确校验开户行行名 00:是 01:否 默认为是, 当该字段为00是时:
 | 
				
			||||||
		RcvPartyDepBnkId        *string                                `json:"rcvpartyDepbnkId,omitempty" validate:"omitempty,max=80"`             // 收方开户行 ,收方开户行和收方联行号选择一个输入即可 付款种类对私付款且账户为银联卡时,可根据卡BIN号识别收方开户行、收方联行号字段,两字段不必输,非空情况以上送值为准
 | 
							RcvPartyDepBnkId        *string                                `json:"rcvpartyDepbnkId,omitempty" validate:"omitempty,max=80"`             // 收方开户行 ,收方开户行和收方联行号选择一个输入即可 付款种类对私付款且账户为银联卡时,可根据卡BIN号识别收方开户行、收方联行号字段,两字段不必输,非空情况以上送值为准
 | 
				
			||||||
| 
						 | 
					@ -178,11 +177,11 @@ type (
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// PayArrangeReq 排款
 | 
						// PayArrangeReq 排款
 | 
				
			||||||
	PayArrangeReq struct {
 | 
						PayArrangeReq struct {
 | 
				
			||||||
		FndarBatNum    string                        `json:"fndarBatNum" validate:"required,max=30,alphanum_special"`  // 外部排款批次号
 | 
							FndarBatNum    string                        `json:"fndarBatNum" validate:"required,max=30"`                 // 外部排款批次号
 | 
				
			||||||
		PypartyAccnum  string                        `json:"pypartyAccnum" validate:"required,account_format"`         // 付方账号
 | 
							PypartyAccnum  tysk_constant.AccountNo       `json:"pypartyAccnum" validate:"required"`                      // 付方账号
 | 
				
			||||||
		BusinessType   *string                       `json:"businessType,omitempty" validate:"max=30"`               // 业务类型
 | 
							BusinessType   *string                       `json:"businessType,omitempty" validate:"max=30"`               // 业务类型
 | 
				
			||||||
		SettlementMode *tysk_constant.SettlementMode `json:"settlementMode,omitempty" validate:"omitempty,settlement"` // 结算方式:01支付转账 02 银承开票 03 商承开票 04银承转让 05商承转让 06 现金支票 07转账支票 08 银行保函 09信用证 0A 银行汇票 0B银行本票0C供应链凭证支付0D项目贷支付10其他,不传默认01支付转账
 | 
							SettlementMode *tysk_constant.SettlementMode `json:"settlementMode,omitempty" validate:"omitempty"`          // 结算方式:01支付转账 02 银承开票 03 商承开票 04银承转让 05商承转让 06 现金支票 07转账支票 08 银行保函 09信用证 0A 银行汇票 0B银行本票0C供应链凭证支付0D项目贷支付10其他,不传默认01支付转账
 | 
				
			||||||
		PayRat         *string                       `json:"payRat,omitempty" validate:"omitempty,pay_rat_json"`       // 排款份额(JSON格式),参考:@struct PayRatItem
 | 
							PayRat         *string                       `json:"payRat,omitempty" validate:"omitempty"`                  // 排款份额(JSON格式),参考:@struct PayRatItem
 | 
				
			||||||
		PayDt          string                        `json:"payDt" validate:"required,datetime=2006-01-02"`          // 应付日期(yyyy-MM-dd)
 | 
							PayDt          string                        `json:"payDt" validate:"required,datetime=2006-01-02"`          // 应付日期(yyyy-MM-dd)
 | 
				
			||||||
		LinkPayFlag    *tysk_constant.CommonBool     `json:"linkPayFlag,omitempty" validate:"omitempty,oneof=00 01"` // 联动支付标志
 | 
							LinkPayFlag    *tysk_constant.CommonBool     `json:"linkPayFlag,omitempty" validate:"omitempty,oneof=00 01"` // 联动支付标志
 | 
				
			||||||
		List           []PayArrangeList              `json:"fndarList" validate:"required,dive"`                     // 交易明细列表
 | 
							List           []PayArrangeList              `json:"fndarList" validate:"required,dive"`                     // 交易明细列表
 | 
				
			||||||
| 
						 | 
					@ -190,15 +189,15 @@ type (
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	PayArrangeList struct {
 | 
						PayArrangeList struct {
 | 
				
			||||||
		FndarNum         string                    `json:"fndarNum" validate:"required,max=50"`                         // 外部排款流水号
 | 
							FndarNum         string                    `json:"fndarNum" validate:"required,max=50"`                         // 外部排款流水号
 | 
				
			||||||
		RcvpyAccnum      string                    `json:"rcvpyAccnum" validate:"required,account_format"`              // 收方账号
 | 
							RcvpyAccnum      tysk_constant.AccountNo   `json:"rcvpyAccnum" validate:"required"`                             // 收方账号
 | 
				
			||||||
		RcvpyAccnm       string                    `json:"rcvpyAccnm" validate:"required,max=300,name_length"`          // 收方户名
 | 
							RcvpyAccnm       string                    `json:"rcvpyAccnm" validate:"required,max=300"`                      // 收方户名
 | 
				
			||||||
		RcvpartyDepbnkId *string                   `json:"rcvpartyDepbnkId,omitempty" validate:"omitempty,max=80"`      // 收方开户行,收方开户行和收方联行号选择一个输入即可 付款种类对私付款且账户为银联卡时,可根据卡BIN号识别收方开户行、收方联行号字段,两字段不必输,非空情况以上送值为准
 | 
							RcvpartyDepbnkId *string                   `json:"rcvpartyDepbnkId,omitempty" validate:"omitempty,max=80"`      // 收方开户行,收方开户行和收方联行号选择一个输入即可 付款种类对私付款且账户为银联卡时,可根据卡BIN号识别收方开户行、收方联行号字段,两字段不必输,非空情况以上送值为准
 | 
				
			||||||
		RcvpartyBnkgId   *string                   `json:"rcvpartyBnkgId,omitempty" validate:"omitempty,max=40"`        // 收方联行号
 | 
							RcvpartyBnkgId   *string                   `json:"rcvpartyBnkgId,omitempty" validate:"omitempty,max=40"`        // 收方联行号
 | 
				
			||||||
		TxnCntprTp       *tysk_constant.TxnCntprTp `json:"txnCntprTp,omitempty" validate:"omitempty,oneof=01 02 03 04"` // 交易对手类型
 | 
							TxnCntprTp       *tysk_constant.TxnCntprTp `json:"txnCntprTp,omitempty" validate:"omitempty,oneof=01 02 03 04"` // 交易对手类型
 | 
				
			||||||
		PyAccTp          tysk_constant.PyAccTp     `json:"pyAccTp" validate:"required,oneof=00 01"`                     // 付款种类
 | 
							PyAccTp          tysk_constant.PyAccTp     `json:"pyAccTp" validate:"required,oneof=00 01"`                     // 付款种类
 | 
				
			||||||
		Amt              float64                   `json:"amt" validate:"required,numeric,amt_format"`                  // 付款金额
 | 
							Amt              float64                   `json:"amt" validate:"required,numeric"`                             // 付款金额
 | 
				
			||||||
		CurrencyID       string                    `json:"currencyID" validate:"required,oneof=CNY"`                    // 币种
 | 
							CurrencyID       string                    `json:"currencyID" validate:"required,oneof=CNY"`                    // 币种
 | 
				
			||||||
		Pscpt            string                    `json:"pscpt" validate:"required,max=300,remark_length"`             // 附言
 | 
							Pscpt            string                    `json:"pscpt" validate:"required,max=300`                            // 附言
 | 
				
			||||||
		Rmrk             *string                   `json:"rmrk,omitempty" validate:"omitempty,max=120"`                 // 备注
 | 
							Rmrk             *string                   `json:"rmrk,omitempty" validate:"omitempty,max=120"`                 // 备注
 | 
				
			||||||
		Rmrk1            *string                   `json:"rmrk1,omitempty" validate:"omitempty,max=600"`                // 备用字段1
 | 
							Rmrk1            *string                   `json:"rmrk1,omitempty" validate:"omitempty,max=600"`                // 备用字段1
 | 
				
			||||||
		Rmrk2            *string                   `json:"rmrk2,omitempty" validate:"omitempty,max=600"`                // 备用字段2
 | 
							Rmrk2            *string                   `json:"rmrk2,omitempty" validate:"omitempty,max=600"`                // 备用字段2
 | 
				
			||||||
| 
						 | 
					@ -210,6 +209,126 @@ type (
 | 
				
			||||||
	PayRatItem struct {
 | 
						PayRatItem struct {
 | 
				
			||||||
		Pcode     string `json:"pcode" validate:"required,max=2"`  // 支付代码
 | 
							Pcode     string `json:"pcode" validate:"required,max=2"`  // 支付代码
 | 
				
			||||||
		Pamt      string `json:"pamt" validate:"required,numeric"` // 支付金额
 | 
							Pamt      string `json:"pamt" validate:"required,numeric"` // 支付金额
 | 
				
			||||||
		PayAccNum string `json:"payAccNum" validate:"required,account_format"` // 支付账号
 | 
							PayAccNum string `json:"payAccNum" validate:"required"`    // 支付账号
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// PayArrangeQueryReq 排款查证
 | 
				
			||||||
 | 
						PayArrangeQueryReq struct {
 | 
				
			||||||
 | 
							FndarBatNum string `json:"fndarBatNum" validate:"required,max=30"` // 外部排款批次号
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// PayArrangeBillQueryReq 排款票据信息查询
 | 
				
			||||||
 | 
						PayArrangeBillQueryReq struct {
 | 
				
			||||||
 | 
							FndarBatNum string  `json:"fndarBatNum" validate:"required,max=30"`              // 外部排款批次号(varchar(30),必填)
 | 
				
			||||||
 | 
							SubTaskNum  *string `json:"subTaskNum" validate:"omitempty,max=100"`             // 子任务编号(varchar(100),非必填)
 | 
				
			||||||
 | 
							StartRecord int     `json:"startRecord" validate:"required,len=4,numeric,min=1"` // 起始记录号(varchar(4),必填,从1开始)
 | 
				
			||||||
 | 
							PageNumber  int     `json:"pageNumber" validate:"required,len=4,numeric,max=20"` // 请求记录条数(varchar(4),必填,最大20)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//BatchesPayArrangeBillQueryReq 多批次排款票据查询
 | 
				
			||||||
 | 
						BatchesPayArrangeBillQueryReq struct {
 | 
				
			||||||
 | 
							FndarBatNum *string `json:"fndarBatNum" validate:"omitempty,max=30"`               // 外部排款批次号(varchar(30),非必填)
 | 
				
			||||||
 | 
							SubTaskNum  *string `json:"subTaskNum" validate:"omitempty,max=100"`               // 子任务编号(varchar(100),非必填)
 | 
				
			||||||
 | 
							StartRecord int     `json:"startRecord" validate:"required,len=4,numeric,min=1"`   // 起始记录号(varchar(4),必填,从1开始)
 | 
				
			||||||
 | 
							PageNumber  int     `json:"pageNumber" validate:"required,len=4,numeric,max=100"`  // 请求记录条数(varchar(4),必填,最大100)
 | 
				
			||||||
 | 
							StartDate   string  `json:"startDate" validate:"required,len=8,datetime=20060102"` // 起始日期(char(8),必填,YYYYMMDD格式)
 | 
				
			||||||
 | 
							EndDate     string  `json:"endDate" validate:"required,len=8,datetime=20060102"`   // 终止日期(char(8),必填,YYYYMMDD格式,与StartDate跨度≤30天)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						//TGBPayReq 团金宝付款
 | 
				
			||||||
 | 
						TGBPayReq struct {
 | 
				
			||||||
 | 
							ExternalBatNum  string                       `json:"externalBatNum" validate:"required,max=30"`                             // 外部请求批次号(varchar(30),必填,不能重复)
 | 
				
			||||||
 | 
							LinkPayFlag     *tysk_constant.CommonBool    `json:"linkPayFlag" validate:"omitempty,oneof=00 01"`                          // 联动支付(char(2),可选,默认"00")
 | 
				
			||||||
 | 
							PypartyAccnum   tysk_constant.AccountNo      `json:"pypartyAccnum" validate:"required,max=32,alphanumHyphen"`               // 付方账号(varchar(32),必填,允许特定字符)
 | 
				
			||||||
 | 
							CurrencyID      string                       `json:"currencyID" validate:"required,len=3"`                                  // 币种(varchar(5),必填,暂仅支持人民币"CNY")
 | 
				
			||||||
 | 
							TotNbr          int                          `json:"totNbr" validate:"required,len=4,numeric,max=1000"`                     // 付款总笔数(char(4),必填,最大1000)
 | 
				
			||||||
 | 
							Amt             float64                      `json:"amt" validate:"required,decimal"`                                       // 付款总金额(decimal(15,2),必填)
 | 
				
			||||||
 | 
							ItlgPayrollType tysk_constant.CommonBool     `json:"itlgPayrollType" validate:"required,oneof=00 01"`                       // 是否代发(char(2),必填) 00:否,01:是
 | 
				
			||||||
 | 
							ItlgPreparType  tysk_constant.ItlgPreparType `json:"itlgPreparType" validate:"required,oneof=0 1"`                          // 记账方式(char(1),必填)0-单笔记账,1-合笔记账
 | 
				
			||||||
 | 
							ItlgRefundFlag  tysk_constant.ItlgRefundFlag `json:"itlgRefundFlag" validate:"required,oneof=0 1"`                          // 退款方式(char(1),必填)0-单笔退款,1-合并退款
 | 
				
			||||||
 | 
							UrgntAprvFlag   *tysk_constant.CommonBool    `json:"urgntAprvFlag" validate:"omitempty,oneof=00 01"`                        // 加急审批(char(2),可选,默认"00")
 | 
				
			||||||
 | 
							RsrvtnFlag      *tysk_constant.CommonBool    `json:"rsrvtnFlag" validate:"omitempty,oneof=00 01"`                           // 预约付款(char(2),可选,默认"00")
 | 
				
			||||||
 | 
							RsrvtnTms       *string                      `json:"rsrvtnTms" validate:"omitempty,datetime=2006-01-02 15:04:05,timeRange"` // 预约时间(varchar(19),可选)
 | 
				
			||||||
 | 
							BatPscpt        string                       `json:"batPscpt" validate:"required,max=60"`                                   // 批次附言(varchar(60),必填)
 | 
				
			||||||
 | 
							BatRmrk         *string                      `json:"batRmrk" validate:"omitempty,max=50"`                                   // 批次备注(varchar(50),可选)
 | 
				
			||||||
 | 
							List            []TGBPayReqRow               `json:"debitList" validate:"required,dive"`                                    // 交易明细列表(必填)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						TGBPayReqRow struct {
 | 
				
			||||||
 | 
							ExternalNum      string                  `json:"externalNum" validate:"required,max=50"`       // 外部请求流水号(varchar(50),必填,同批次内不重复)
 | 
				
			||||||
 | 
							RcvpyAccnum      tysk_constant.AccountNo `json:"rcvpyAccnum" validate:"required,max=32,"`      // 收方账号(varchar(32),必填,允许特定字符)
 | 
				
			||||||
 | 
							RcvpyAccnm       string                  `json:"rcvpyAccnm" validate:"required,max=300,"`      // 收方户名(varchar(300),必填,支持汉字/非汉字长度计算)
 | 
				
			||||||
 | 
							RcvpartyDepbnkId *string                 `json:"rcvpartyDepbnkId" validate:"omitempty,max=80"` // 收方开户行(varchar(80),可选)
 | 
				
			||||||
 | 
							RcvpartyBnkgId   *string                 `json:"rcvpartyBnkgId" validate:"omitempty,max=40"`   // 收方联行号(varchar(40),可选)
 | 
				
			||||||
 | 
							DebitAmt         float64                 `json:"debitAmt" validate:"required,decimal"`         // 付款金额(decimal(15,2),必填)
 | 
				
			||||||
 | 
							Pscpt            string                  `json:"pscpt" validate:"required,max=300,"`           // 附言(varchar(300),必填,支持汉字/非汉字长度计算)
 | 
				
			||||||
 | 
							Rmrk             *string                 `json:"rmrk" validate:"omitempty,max=120"`            // 备注(varchar(120),可选)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						//RefundTransQueryReq 退汇交易查询
 | 
				
			||||||
 | 
						RefundTransQueryReq struct {
 | 
				
			||||||
 | 
							StartRecord int         `json:"startRecord" validate:"required,len=4,numeric,min=1"`   // 起始记录号(varchar(4),必填,从1开始)
 | 
				
			||||||
 | 
							PageNumber  int         `json:"pageNumber" validate:"required,len=4,numeric,max=100"`  // 请求记录条数(varchar(4),必填,最大100)
 | 
				
			||||||
 | 
							StartDate   string      `json:"startDate" validate:"required,len=8,datetime=20060102"` // 起始日期(char(8),必填,YYYYMMDD格式)
 | 
				
			||||||
 | 
							EndDate     string      `json:"endDate" validate:"required,len=8,datetime=20060102"`   // 终止日期(char(8),必填,YYYYMMDD格式,与StartDate跨度≤30天)
 | 
				
			||||||
 | 
							AccountNo   AccountList `json:"userDataList.accountNo"`                                // 用户有查询权限的银行账号
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//BatchSalarySendReq 3.2.11批量代发(薪酬代发)
 | 
				
			||||||
 | 
						BatchSalarySendReq struct {
 | 
				
			||||||
 | 
							ExternalBatNum string                    `json:"externalBatNum" validate:"required,max=30"`                                                   // 外部请求批次号
 | 
				
			||||||
 | 
							LinkPayFlag    *tysk_constant.CommonBool `json:"linkPayFlag" validate:"omitempty,len=2,oneof=00 01"`                                          // 联动支付(默认00)
 | 
				
			||||||
 | 
							PypartyAccnum  tysk_constant.AccountNo   `json:"pypartyAccnum" validate:"required,max=32,account"`                                            // 付方账号
 | 
				
			||||||
 | 
							CurrencyID     string                    `json:"currencyID" validate:"required,len=3,oneof=CNY"`                                              // 币种(暂仅支持CNY)
 | 
				
			||||||
 | 
							TotNbr         int                       `json:"totNbr" validate:"required,len=4,numeric,max=1000"`                                           // 付款总笔数
 | 
				
			||||||
 | 
							Amt            float64                   `json:"amt" validate:"required,numeric,amt"`                                                         // 付款总金额(15,2)
 | 
				
			||||||
 | 
							PayrollDt      string                    `json:"payrollDt,omitempty" validate:"omitempty,len=6,datetime=200601"`                              // 代发月份(yyyyMM)使用中银行代发、中原银行、齐鲁银行代发、工商银行代发、兴业银行代发代发时必填 格式:yyyyMM
 | 
				
			||||||
 | 
							UrgntAprvFlag  *tysk_constant.CommonBool `json:"urgntAprvFlag,omitempty" validate:"omitempty,len=2,oneof=00 01"`                              // 加急审批(默认00)
 | 
				
			||||||
 | 
							RsrvtnFlag     *tysk_constant.CommonBool `json:"rsrvtnFlag,omitempty" validate:"omitempty,len=2,oneof=00 01"`                                 // 预约付款(默认00)
 | 
				
			||||||
 | 
							RsrvtnTms      *string                   `json:"rsrvtnTms,omitempty" validate:"omitempty,datetime=2006-01-02 15:04:05,timeRange=06:00-22:00"` // 预约时间是否预约付款状态为01,预约时间必填;预约时间年月日格式为 yyyy-MM-dd  时分格式为枚举值 06:00-22:00任一时间
 | 
				
			||||||
 | 
							BatPscpt       string                    `json:"batPscpt" validate:"required,max=60"`                                                         // 批次附言
 | 
				
			||||||
 | 
							PayrollUse     *string                   `json:"payrollUse,omitempty" validate:"omitempty,max=60,dictCheck"`                                  // 代发用途(银行特定要求)付款行为交行时,必输,传入交行签约类型编码; 付款行为建行、浦发银行、兴业银行、工商银行、招商银行、平安银行、中国银行、农行、民生、光大、广发、渤海、华夏、无锡农村商业银行、山西农信社、徽商银行、西安银行、中信银行等时,必输,传入代发用途;(其中中信银行增加默认值1:代发工资) 付款行为威海银行时,代发用途默认为“0002-代发工资”
 | 
				
			||||||
 | 
							ExtField1      *string                   `json:"extField1,omitempty" validate:"omitempty,max=60"`                                             // 扩展字段1付款行为交行时,必输,传入交行协议编号; 付款行为平安时,非必输,传入平安协议编号; 付款行为建行时,必输,传入代发项目; 上述字典码值信息必须在司库系统-公共中心-数据字典-结算中心数据字典功能可查询到详见附录薪酬代发银行代发项目、代发用途码表
 | 
				
			||||||
 | 
							List           []BatchSalarySendRow      `json:"debitList" validate:"required,dive"`                                                          // 付款明细列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						BatchSalarySendRow struct {
 | 
				
			||||||
 | 
							ExternalNum      string                  `json:"externalNum" validate:"required,max=50"`                 // 外部请求流水号
 | 
				
			||||||
 | 
							RcvpyAccnum      tysk_constant.AccountNo `json:"rcvpyAccnum" validate:"required,max=32,account"`         // 收方账号
 | 
				
			||||||
 | 
							RcvpyAccnm       string                  `json:"rcvpyAccnm" validate:"required,max=300,name"`            // 收方户名
 | 
				
			||||||
 | 
							RcvpartyDepbnkId *string                 `json:"rcvpartyDepbnkId,omitempty" validate:"omitempty,max=80"` // 收方开户行
 | 
				
			||||||
 | 
							RcvpartyBnkgId   *string                 `json:"rcvpartyBnkgId,omitempty" validate:"omitempty,max=40"`   // 收方联行号
 | 
				
			||||||
 | 
							DebitAmt         float64                 `json:"debitAmt" validate:"required,numeric,amt"`               // 付款金额(15,2)
 | 
				
			||||||
 | 
							Pscpt            string                  `json:"pscpt" validate:"required,max=300,remark"`               // 附言
 | 
				
			||||||
 | 
							Rmrk             string                  `json:"rmrk,omitempty" validate:"omitempty,max=120"`            // 备注
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						//BankInfoQueryReq 境内银行网点信息查询
 | 
				
			||||||
 | 
						BankInfoQueryReq struct {
 | 
				
			||||||
 | 
							BankCode    string `json:"bankCode,omitempty" validate:"omitempty,max=10" comment:"银行类别编码"` // 银行类别编码(varchar(10)),与areaId至少输入一个
 | 
				
			||||||
 | 
							AreaID      string `json:"areaId,omitempty" validate:"omitempty,max=4" comment:"区域编码"`      // 区域编码(varchar(4)),与bankCode至少输入一个
 | 
				
			||||||
 | 
							SkRecordNum int    `json:"sk_recordNum" validate:"required,max=4" comment:"分页条数"`           // 分页条数(varchar(4))
 | 
				
			||||||
 | 
							SkStartNo   int    `json:"sk_startNo" validate:"required,max=4" comment:"分页起始序号"`           // 分页起始序号(varchar(4))
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BillListReq 3.4.1票据列表查询
 | 
				
			||||||
 | 
						BillListReq struct {
 | 
				
			||||||
 | 
							QueryType   tysk_constant.QueryType `json:"queryType" validate:"required,len=2,oneof=00 01 02"`   // 查询类型00持有01申请02签收
 | 
				
			||||||
 | 
							BsnTp       *string                 `json:"bsnTp" validate:"validBsnTp"`                          // 业务种类(多选用逗号分隔)17-提示付款,18-供应链票据付款,51-出票登记,52-提示承兑,53-提示收票,54-未用退回,55-保证申请,56-背书转让,57-贴现申请,58-回购式贴现赎回,59-质押,60-质押解除,61-追索通知,62-同意清偿,63-线下追偿登记,64-不得转让标记撤销,65-票据查验,24-到期前提示付款,72-到期后质押解除,支持多选用“,”隔开
 | 
				
			||||||
 | 
							List        *[]BillListReqRow       `json:"queryBillParam" validate:"dive"`                       // 查询条件列表
 | 
				
			||||||
 | 
							MinAmt      *float64                `json:"minAmt" validate:"omitempty"`                          // 最小金额(可选)
 | 
				
			||||||
 | 
							MaxAmt      *float64                `json:"maxAmt" validate:"omitempty"`                          // 最大金额(可选)
 | 
				
			||||||
 | 
							ExpDtStart  *string                 `json:"expDtStart" validate:"omitempty,datetime=2006-01-02"`  // 到期日起始日期
 | 
				
			||||||
 | 
							ExpDtEnd    *string                 `json:"expDtEnd" validate:"omitempty,datetime=2006-01-02"`    // 到期日截止日期
 | 
				
			||||||
 | 
							StartRecord int                     `json:"startRecord" validate:"required,len=10,numeric"`       // 起始记录号(从1开始)
 | 
				
			||||||
 | 
							PageNumber  int                     `json:"pageNumber" validate:"required,len=4,numeric,max=200"` // 请求记录条数(最多200条)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						BillListReqRow struct {
 | 
				
			||||||
 | 
							SignAcc   string `json:"signAcc,omitempty" validate:"omitempty,max=40"`   // 签约账号(可选)
 | 
				
			||||||
 | 
							BillPkgId string `json:"billPkgId,omitempty" validate:"omitempty,max=30"` // 票据包号(可选)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BillDetailReq 票据详情
 | 
				
			||||||
 | 
						BillDetailReq struct {
 | 
				
			||||||
 | 
							SignAcc    string `json:"signAcc" validate:"required,max=40"`        // 签约账号
 | 
				
			||||||
 | 
							BillPkgId  string `json:"billPkgId" validate:"required,max=30"`      // 票据包号
 | 
				
			||||||
 | 
							SubBillRng string `json:"subBillRng,omitempty" validate:"omitempty"` // 子票区间(新一代电票必输)格式为000000000001,000001010110
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -116,9 +116,6 @@ type (
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	ReceiptQueryResp struct {
 | 
						ReceiptQueryResp struct {
 | 
				
			||||||
		Status         string       `json:"status" comment:"交易状态"`             // 交易状态
 | 
					 | 
				
			||||||
		StatusText     string       `json:"statusText" comment:"交易状态信息"`       // 交易状态结果描述
 | 
					 | 
				
			||||||
		FailReason     string       `json:"failReason" comment:"错误信息展示"`       // 校验失败时,失败原因展示(可选)
 | 
					 | 
				
			||||||
		TotRcptStat    string       `json:"totRcptStat" comment:"总回单查询状态"`     // 总回单查询状态:1-全部成功(终态);2-部分成功;3-部分成功部分失败(终态)
 | 
							TotRcptStat    string       `json:"totRcptStat" comment:"总回单查询状态"`     // 总回单查询状态:1-全部成功(终态);2-部分成功;3-部分成功部分失败(终态)
 | 
				
			||||||
		TotalRecords   string       `json:"totalRecords" comment:"回单总记录条数"`    // 交易成功时返回,用户有查询权限的所有账户数量(可选)
 | 
							TotalRecords   string       `json:"totalRecords" comment:"回单总记录条数"`    // 交易成功时返回,用户有查询权限的所有账户数量(可选)
 | 
				
			||||||
		ReturnRecords  string       `json:"returnRecords" comment:"返回记录条数"`    // 交易成功时返回,本次查询获取到的账户数量(可选)
 | 
							ReturnRecords  string       `json:"returnRecords" comment:"返回记录条数"`    // 交易成功时返回,本次查询获取到的账户数量(可选)
 | 
				
			||||||
| 
						 | 
					@ -174,7 +171,7 @@ type (
 | 
				
			||||||
		ClientId string `json:"clientId" comment:"记录申请编号"` //客户查询自定义的流水号,用于查询结果信息,流水号需唯一
 | 
							ClientId string `json:"clientId" comment:"记录申请编号"` //客户查询自定义的流水号,用于查询结果信息,流水号需唯一
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	//TransHisQueryResp  历史明细结果查询 银企直联交易明细查询响应
 | 
						//TransHisQueryResp  历史明细结果查询
 | 
				
			||||||
	TransHisQueryResp struct {
 | 
						TransHisQueryResp struct {
 | 
				
			||||||
		// 账户基本信息(交易成功时返回)
 | 
							// 账户基本信息(交易成功时返回)
 | 
				
			||||||
		AccountNo    string `json:"accountNo" comment:"账号"`       // 账号(varchar(40),选填)
 | 
							AccountNo    string `json:"accountNo" comment:"账号"`       // 账号(varchar(40),选填)
 | 
				
			||||||
| 
						 | 
					@ -234,7 +231,7 @@ type (
 | 
				
			||||||
	BalanceHisQueryRespRow struct {
 | 
						BalanceHisQueryRespRow struct {
 | 
				
			||||||
		AccountNo   string `json:"accountNo" comment:"账号"`     // 账号(varchar(40),必填)
 | 
							AccountNo   string `json:"accountNo" comment:"账号"`     // 账号(varchar(40),必填)
 | 
				
			||||||
		AccountName string `json:"accountName" comment:"账户名称"` // 账户名称(varchar(120),必填)
 | 
							AccountName string `json:"accountName" comment:"账户名称"` // 账户名称(varchar(120),必填)
 | 
				
			||||||
		Balance     float64 `json:"balance" comment:"历史余额"`     // 余额(decimal(15,2),选填)
 | 
							Balance     string `json:"balance" comment:"历史余额"`     // 余额(decimal(15,2),选填)
 | 
				
			||||||
		CurrencyID  string `json:"currencyID" comment:"币种"`    // 币种(varchar(5),选填)
 | 
							CurrencyID  string `json:"currencyID" comment:"币种"`    // 币种(varchar(5),选填)
 | 
				
			||||||
		Date        string `json:"date" comment:"日期"`          // 余额日期(char(8),选填,格式yyyyMMdd)
 | 
							Date        string `json:"date" comment:"日期"`          // 余额日期(char(8),选填,格式yyyyMMdd)
 | 
				
			||||||
		DataSource  string `json:"dataSource" comment:"数据来源"`  // 数据来源(char(2),选填)
 | 
							DataSource  string `json:"dataSource" comment:"数据来源"`  // 数据来源(char(2),选填)
 | 
				
			||||||
| 
						 | 
					@ -244,8 +241,8 @@ type (
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// AccountsTransHisQueryResp 多账户历史明细查询
 | 
						// AccountsTransHisQueryResp 多账户历史明细查询
 | 
				
			||||||
	AccountsTransHisQueryResp struct {
 | 
						AccountsTransHisQueryResp struct {
 | 
				
			||||||
		TotalRecords  string `json:"totalRecords" comment:"总记录条数(int,选填)"`
 | 
							TotalRecords  string `json:"totalRecords" comment:"总记录条数"`   // 总记录条数(int,选填)
 | 
				
			||||||
		ReturnRecords string `json:"returnRecords" comment:"返回记录条数(int,选填)"`
 | 
							ReturnRecords string `json:"returnRecords" comment:"返回记录条数"` // 返回记录条数(int,选填)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// 交易明细列表
 | 
							// 交易明细列表
 | 
				
			||||||
		List []AccountsTransHisQueryRow `json:"userDataList" comment:"交易明细列表"`
 | 
							List []AccountsTransHisQueryRow `json:"userDataList" comment:"交易明细列表"`
 | 
				
			||||||
| 
						 | 
					@ -274,11 +271,11 @@ type (
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// 交易属性
 | 
							// 交易属性
 | 
				
			||||||
		TranType   string `json:"tranType,omitempty" comment:"借贷方向"`   // 交易成功且查询到交易明细时返回,02:借;03:贷
 | 
							TranType   string `json:"tranType,omitempty" comment:"借贷方向"`   // 交易成功且查询到交易明细时返回,02:借;03:贷
 | 
				
			||||||
		TranAmount float64 `json:"tranAmount,omitempty" comment:"交易金额"` // 交易成功且查询到交易明细时返回
 | 
							TranAmount string `json:"tranAmount,omitempty" comment:"交易金额"` // 交易成功且查询到交易明细时返回
 | 
				
			||||||
		Rrtanid    string `json:"rrtanid,omitempty" comment:"退汇标识"`    // 0已退汇 1非退汇 2手工退汇
 | 
							Rrtanid    string `json:"rrtanid,omitempty" comment:"退汇标识"`    // 0已退汇 1非退汇 2手工退汇
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// 余额信息
 | 
							// 余额信息
 | 
				
			||||||
		Balance    float64 `json:"balance,omitempty" comment:"账户余额"`  // 交易成功且查询到账户时返回,标识该账户中全部余额
 | 
							Balance    string `json:"balance,omitempty" comment:"账户余额"`  // 交易成功且查询到账户时返回,标识该账户中全部余额
 | 
				
			||||||
		CurrencyID string `json:"currencyID,omitempty" comment:"币种"` // 交易成功且查询到账户时返回
 | 
							CurrencyID string `json:"currencyID,omitempty" comment:"币种"` // 交易成功且查询到账户时返回
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// 流水号信息
 | 
							// 流水号信息
 | 
				
			||||||
| 
						 | 
					@ -325,8 +322,8 @@ type (
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	SinglePayQueryResp struct {
 | 
						SinglePayQueryResp struct {
 | 
				
			||||||
		PyStat          string `json:"pyStat" comment:"支付任务状态"`          // 支付任务状态
 | 
							PyStat          string `json:"pyStat" comment:"支付任务状态"`          // 支付任务状态 01:待提交:待提交审批 02:待付款:已提交审批,流程运行中 03:处理中:审批通过,正在付款或批次内包含处理中的支付明细任务 04:付款成功:支付终态,批次付款成功 05:付款失败:支付终态,批次付款失败 06:已拒绝:批次审批不同意 07:部分成功:支付终态,批次内同时包含付款失败和付款成功的支付明细任务
 | 
				
			||||||
		AlocStat        string `json:"alocStat" comment:"资金下拨结果"`        // 资金下拨结果(联动支付时展示)
 | 
							AlocStat        string `json:"alocStat" comment:"资金下拨结果"`        // 资金下拨结果(联动支付时展示) // 00-待处理 01-处理中 02-无需下拨 03-成功 04-失败
 | 
				
			||||||
		BnkRetCode      string `json:"bnkRetCode" comment:"银行交易结果"`      // 银行返回结果
 | 
							BnkRetCode      string `json:"bnkRetCode" comment:"银行交易结果"`      // 银行返回结果
 | 
				
			||||||
		ExtendRemark    string `json:"extendRemark" comment:"备注"`        // JSON格式字符串,包含额外信息,参考:@struct SinglePayQueryExtendRemark
 | 
							ExtendRemark    string `json:"extendRemark" comment:"备注"`        // JSON格式字符串,包含额外信息,参考:@struct SinglePayQueryExtendRemark
 | 
				
			||||||
		PyPartyAccNum   string `json:"pypartyAccnum" comment:"付方账号"`     // 付方账号
 | 
							PyPartyAccNum   string `json:"pypartyAccnum" comment:"付方账号"`     // 付方账号
 | 
				
			||||||
| 
						 | 
					@ -335,7 +332,7 @@ type (
 | 
				
			||||||
		PyPartyBnkgId   string `json:"pypartyBnkgId" comment:"付方开户行联行号"` // 付方开户行联行号
 | 
							PyPartyBnkgId   string `json:"pypartyBnkgId" comment:"付方开户行联行号"` // 付方开户行联行号
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// SinglePayQueryExtendRemark 扩展备注字段结构体
 | 
						// SinglePayQueryExtendRemark 扩展备注字段
 | 
				
			||||||
	SinglePayQueryExtendRemark struct {
 | 
						SinglePayQueryExtendRemark struct {
 | 
				
			||||||
		ApprovalTime string `json:"approvalTime,omitempty" comment:"终审通过/拒绝时间"` // yyyy-MM-dd HH:mm:ss
 | 
							ApprovalTime string `json:"approvalTime,omitempty" comment:"终审通过/拒绝时间"` // yyyy-MM-dd HH:mm:ss
 | 
				
			||||||
		CreateTime   string `json:"createTime,omitempty" comment:"外系统提单时间"`     // yyyy-MM-dd HH:mm:ss
 | 
							CreateTime   string `json:"createTime,omitempty" comment:"外系统提单时间"`     // yyyy-MM-dd HH:mm:ss
 | 
				
			||||||
| 
						 | 
					@ -366,16 +363,16 @@ type (
 | 
				
			||||||
		AlocStat string `json:"alocStat,omitempty" validate:"omitempty,oneof=00 01 02 03 04" comment:"资金下拨结果"`
 | 
							AlocStat string `json:"alocStat,omitempty" validate:"omitempty,oneof=00 01 02 03 04" comment:"资金下拨结果"`
 | 
				
			||||||
		// 00-待处理 01-处理中 02-无需下拨 03-成功 04-失败
 | 
							// 00-待处理 01-处理中 02-无需下拨 03-成功 04-失败
 | 
				
			||||||
		ExternalBatNum  string             `json:"externalBatNum" validate:"required" comment:"外部请求批次号"` // 业务批次唯一标识
 | 
							ExternalBatNum  string             `json:"externalBatNum" validate:"required" comment:"外部请求批次号"` // 业务批次唯一标识
 | 
				
			||||||
		ExtendRemark    string      `json:"extendRemark,omitempty" comment:"扩展备注(JSON格式)"`        // JSON格式备注信息
 | 
							ExtendRemark    string             `json:"extendRemark,omitempty" comment:"扩展备注(JSON格式)"`        // JSON格式备注信息 格式参考:@struct ExtendRemark
 | 
				
			||||||
		PyPartyAccNum   string             `json:"pypartyAccnum" validate:"required" comment:"付方账号"`     // 付款账号
 | 
							PyPartyAccNum   string             `json:"pypartyAccnum" validate:"required" comment:"付方账号"`     // 付款账号
 | 
				
			||||||
		PyPartyAccNm    string             `json:"pypartyAccnm" validate:"required" comment:"付方户名"`      // 付款户名
 | 
							PyPartyAccNm    string             `json:"pypartyAccnm" validate:"required" comment:"付方户名"`      // 付款户名
 | 
				
			||||||
		PyPartyDepBnkNm string             `json:"pypartyDepBnkNm" validate:"required" comment:"付方开户行"`  // 开户行名称
 | 
							PyPartyDepBnkNm string             `json:"pypartyDepBnkNm" validate:"required" comment:"付方开户行"`  // 开户行名称
 | 
				
			||||||
		PyPartyBnkgId   string             `json:"pypartyBnkgId" validate:"required" comment:"付方开户行联行号"` // 11位联行号
 | 
							PyPartyBnkgId   string             `json:"pypartyBnkgId" validate:"required" comment:"付方开户行联行号"` // 11位联行号
 | 
				
			||||||
		List            []PayDetail `json:"batchInfoList" validate:"dive" comment:"明细支付结果列表"`     // 明细支付结果列表
 | 
							List            []BatchPayQueryRow `json:"batchInfoList" validate:"dive" comment:"明细支付结果列表"`     // 明细支付结果列表
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// PayDetail 单笔明细支付结果
 | 
						// PayDetail 单笔明细支付结果
 | 
				
			||||||
	PayDetail struct {
 | 
						BatchPayQueryRow struct {
 | 
				
			||||||
		BnkRetCode string `json:"bnkRetCode" validate:"required" comment:"银行处理结果"` // 银行返回信息
 | 
							BnkRetCode string `json:"bnkRetCode" validate:"required" comment:"银行处理结果"` // 银行返回信息
 | 
				
			||||||
		PyStat     string `json:"pyStat" validate:"required,oneof=01 02 03 04 05" comment:"明细支付状态"`
 | 
							PyStat     string `json:"pyStat" validate:"required,oneof=01 02 03 04 05" comment:"明细支付状态"`
 | 
				
			||||||
		// 01:待提交 02:待付款 03:处理中 04:成功 05:失败
 | 
							// 01:待提交 02:待付款 03:处理中 04:成功 05:失败
 | 
				
			||||||
| 
						 | 
					@ -389,4 +386,379 @@ type (
 | 
				
			||||||
		RejectReason string `json:"rejectReason,omitempty" comment:"拒绝原因"`                      // 审批拒绝原因
 | 
							RejectReason string `json:"rejectReason,omitempty" comment:"拒绝原因"`                      // 审批拒绝原因
 | 
				
			||||||
		OptUserNm    string `json:"optUserNm,omitempty" comment:"操作人姓名"`                        // 操作人名称
 | 
							OptUserNm    string `json:"optUserNm,omitempty" comment:"操作人姓名"`                        // 操作人名称
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						// PayArrangeQueryResp 排款查证
 | 
				
			||||||
 | 
						PayArrangeQueryResp struct {
 | 
				
			||||||
 | 
							FndarBatNum  string               `json:"fndarBatNum" comment:"外部排款批次号"`       // 最大长度为0(这里可能有误,应为具体长度)
 | 
				
			||||||
 | 
							DocId        string               `json:"docId" comment:"排款业务编号/批次号"`          // 单笔付款类型为排款业务编号;批量付款类型为批次号
 | 
				
			||||||
 | 
							FndarStat    string               `json:"fndarStat" comment:"排款业务状态"`          // 同结算中心"批次/单据状态"02	已排期 03	未排期 04	处理中 05	处理成功 12	部分排期 13	终止排期
 | 
				
			||||||
 | 
							TotAmt       string               `json:"totAmt" comment:"申请金额"`               // 金额类型decimal(15,2)
 | 
				
			||||||
 | 
							CurrencyID   string               `json:"currencyID" comment:"币种"`             // 币种
 | 
				
			||||||
 | 
							PaidAmt      string               `json:"paidAmt" comment:"已付金额"`              // 已付金额
 | 
				
			||||||
 | 
							UnpaidAmt    string               `json:"unpaidAmt" comment:"未付金额"`            // 未付金额
 | 
				
			||||||
 | 
							PayingAmt    string               `json:"payingAmt" comment:"在途金额"`            // 在途金额
 | 
				
			||||||
 | 
							PayDt        string               `json:"payDt" comment:"应付日期"`                // 格式:yyyy-MM-dd
 | 
				
			||||||
 | 
							ExtendRemark string               `json:"extendRemark,omitempty" comment:"备注"` // JSON格式字符串(可选)
 | 
				
			||||||
 | 
							List         []PayArrangeQueryRow `json:"fndarList" comment:"排款明细列表"`          // 排款明细列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						PayArrangeQueryRow struct {
 | 
				
			||||||
 | 
							FndarNum              string `json:"fndarNum" comment:"外部排款流水号"`                        // 推送的原单据外部排款流水号
 | 
				
			||||||
 | 
							SubTaskNum            string `json:"subTaskNum,omitempty" comment:"子任务编号"`              // 在司库结算做排期操作后生成的子任务编号(可选)
 | 
				
			||||||
 | 
							ExternalBatNum        string `json:"externalBatNum,omitempty" comment:"外部请求批次号"`        // 批量付款时的外部请求批次号(可选)
 | 
				
			||||||
 | 
							ExternalNum           string `json:"externalNum,omitempty" comment:"外部请求流水号"`           // 单笔、批量付款中支付事项的外部请求流水号(可选)
 | 
				
			||||||
 | 
							PypartyOrgNm          string `json:"pypartyOrgNm" comment:"付方单位"`                       // 付方单位
 | 
				
			||||||
 | 
							PypartyAccnum         string `json:"pypartyAccnum" comment:"付方账号"`                      // 付方账号
 | 
				
			||||||
 | 
							PypartyAccnm          string `json:"pypartyAccnm" comment:"付方户名"`                       // 付方户名
 | 
				
			||||||
 | 
							PypartyDepBnkNm       string `json:"pypartyDepBnkNm" comment:"付方开户行"`                   // 付方开户行
 | 
				
			||||||
 | 
							PypartyBnkgId         string `json:"pypartyBnkgId" comment:"付方开户行联行号"`                  // 付方开户行联行号
 | 
				
			||||||
 | 
							RcvpyAccnm            string `json:"rcvpyAccnm" comment:"收方户名"`                         // 收方户名
 | 
				
			||||||
 | 
							RcvpyAccnum           string `json:"rcvpyAccnum" comment:"收方账号"`                        // 收方账号
 | 
				
			||||||
 | 
							RcvpartyDepBnkNm      string `json:"rcvpartyDepBnkNm" comment:"收方开户行"`                  // 收方开户行
 | 
				
			||||||
 | 
							Amt                   string `json:"amt" comment:"付款金额"`                                // 付款金额
 | 
				
			||||||
 | 
							PyStat                string `json:"pyStat" comment:"子任务单据状态"`                          // 子任务单据状态02	已排期 03	未排期(作废) 04	处理中 05	处理成功 06	处理失败
 | 
				
			||||||
 | 
							PcsStat               string `json:"pcsStat,omitempty" comment:"子任务流程状态"`               // 子任务流程状态(可选)DF	- 草稿 IP	- 运行中 FN	- 已完成 TM	- 已作废
 | 
				
			||||||
 | 
							PyTp                  string `json:"pyTp" comment:"付款类型"`                               // 付款类型S1 - 单笔对外付款 S2 - 联动单笔付款 B1 - 批量对外付款 B2 - 联动批量付款
 | 
				
			||||||
 | 
							SettlementMode        string `json:"settlementMode" comment:"结算方式"`                     // 结算方式:01支付转账 02 银承开票 03 商承开票 04银承转让 05商承转让 06 现金支票 07转账支票 08 银行保函 09信用证 10其他 0A银行汇票0B银行本票 0C供应链凭证支付
 | 
				
			||||||
 | 
							FndarTms              string `json:"fndarTms,omitempty" comment:"排款时间"`                 // 格式:yyyy-MM-dd HH:mm:ss(可选)
 | 
				
			||||||
 | 
							RsrvtnTms             string `json:"rsrvtnTms,omitempty" comment:"预约时间"`                // 格式:yyyy-MM-dd HH:mm:ss(可选)
 | 
				
			||||||
 | 
							RcvBnkTms             string `json:"rcvBnkTms,omitempty" comment:"转账结果获取时间"`            // 格式:yyyy-MM-dd HH:mm:ss(可选)
 | 
				
			||||||
 | 
							OfflinePayDate        string `json:"offlinePayDate,omitempty" comment:"线下付款日期"`         // 格式:yyyy-MM-dd(可选)结算方式为 06 现金支票 07转账支票 08 银行保函 09信用证 10其他时,子任务状态为“支付成功”时非空,返回线下付款日期
 | 
				
			||||||
 | 
							OfflineBnkJrnlNum     string `json:"offlineBnkJrnlNum,omitempty" comment:"流水号"`         // 线下付款流水号(可选)结算方式为 06 现金支票 07转账支票 08 银行保函 09信用证 10其他时,子任务状态为“支付成功”时非空,才返回流水号
 | 
				
			||||||
 | 
							OfflineRmrk           string `json:"offlineRmrk,omitempty" comment:"线下付款说明"`            // 线下付款说明(可选)算方式为 06 现金支票 07转账支票 08 银行保函 09信用证 10其他时,子任务状态为“支付成功”时非空,才返回流水号
 | 
				
			||||||
 | 
							BillInfoCount         string `json:"billInfoCount,omitempty" comment:"票据总张数"`           // 票据总张数(可选)
 | 
				
			||||||
 | 
							BillTotAmt            string `json:"billTotAmt,omitempty" comment:"票据总金额"`              // 票据总金额(可选)
 | 
				
			||||||
 | 
							SignBillInfoCount     string `json:"signBillInfoCount,omitempty" comment:"已收票张数"`       // 已收票张数(可选)
 | 
				
			||||||
 | 
							SignBillTotAmt        string `json:"signBillTotAmt,omitempty" comment:"已收票金额"`          // 已收票金额(可选)
 | 
				
			||||||
 | 
							WaitSignBillInfoCount string `json:"waitSignBillInfoCount,omitempty" comment:"待签收票据张数"` // 待签收票据张数(可选)
 | 
				
			||||||
 | 
							WaitSignBillTotAmt    string `json:"waitSignBillTotAmt,omitempty" comment:"待签收票据金额"`    // 待签收票据金额(可选)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// PayArrangeBillQueryResp 排款票据信息查询
 | 
				
			||||||
 | 
						PayArrangeBillQueryResp struct {
 | 
				
			||||||
 | 
							FndarBatNum   string                   `json:"fndarBatNum" comment:"外部排款批次号"`            // 外部排款批次号
 | 
				
			||||||
 | 
							DocId         string                   `json:"docId" comment:"排款业务编号/批次号"`               // 单笔付款类型为排款业务编号;批量付款类型为批次号
 | 
				
			||||||
 | 
							TotalRecords  string                   `json:"totalRecords,omitempty" comment:"总记录条数"`   // 交易成功时返回,返回该登陆用户具有查询权限的排款票据数量
 | 
				
			||||||
 | 
							ReturnRecords string                   `json:"returnRecords,omitempty" comment:"返回记录条数"` // 交易成功时返回,返回该登陆用户本次查询获取到的排款票据数量
 | 
				
			||||||
 | 
							List          []PayArrangeBillQueryRow `json:"billInfoList" comment:"排款票据列表"`            // 排款票据列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						PayArrangeBillQueryRow struct {
 | 
				
			||||||
 | 
							FndarNum          string `json:"fndarNum,omitempty" comment:"外部排款流水号"`           // 推送的原单据外部排款流水号
 | 
				
			||||||
 | 
							SubTaskNum        string `json:"subTaskNum,omitempty" comment:"子任务编号"`           // 在司库结算做排期操作后生成的子任务编号
 | 
				
			||||||
 | 
							SettlementMode    string `json:"settlementMode,omitempty" comment:"结算方式"`        // 结算方式:02 银承开票 03 商承开票 04银承转让 05商承转让
 | 
				
			||||||
 | 
							SignAcc           string `json:"signAcc,omitempty" comment:"签约账号"`               // 排款付款账号
 | 
				
			||||||
 | 
							BillPkgId         string `json:"billPkgId,omitempty" comment:"票据包号"`             // 票据包号
 | 
				
			||||||
 | 
							SubBillRng        string `json:"subBillRng,omitempty" comment:"子票区间"`            // 子票区间
 | 
				
			||||||
 | 
							IsSupprDt         string `json:"isSupprDt,omitempty" comment:"出票日期"`             // 格式yyyy-MM-dd
 | 
				
			||||||
 | 
							BillRcvDt         string `json:"billRcvDt,omitempty" comment:"票据到期日期"`           // 格式yyyy-MM-dd
 | 
				
			||||||
 | 
							IsPrmtSubpge      string `json:"isPrmtSubpge,omitempty" comment:"是否允许分包"`        // Y:可分包;N:不可分包
 | 
				
			||||||
 | 
							BillStat          string `json:"billStat,omitempty" comment:"票据状态"`              // 按码值存储,按码值返回
 | 
				
			||||||
 | 
							CrclFlag          string `json:"crclFlag,omitempty" comment:"流通标志"`              // 流通标志
 | 
				
			||||||
 | 
							BillTp            string `json:"billTp,omitempty" comment:"票据类型"`                // AC01:银承; AC02:商承
 | 
				
			||||||
 | 
							BillFaceAmt       string `json:"billFaceAmt,omitempty" comment:"票面金额"`           // 票面金额
 | 
				
			||||||
 | 
							TfrMark           string `json:"tfrMark,omitempty" comment:"转让标记"`               // EM00:可再转让 ;EM01不得转让
 | 
				
			||||||
 | 
							BankDockingMode   string `json:"bankDockingMode,omitempty" comment:"银行对接模式"`     // Y:直联;N:非直联
 | 
				
			||||||
 | 
							BillFaceMemo      string `json:"billFaceMemo,omitempty" comment:"票面备注"`          // 票面备注
 | 
				
			||||||
 | 
							RmtrNm            string `json:"rmtrNm,omitempty" comment:"出票人名称"`               // 出票人名称
 | 
				
			||||||
 | 
							RmtrIsSupprMemo   string `json:"rmtrIsSupprMemo,omitempty" comment:"出票人备注"`      // 出票人备注
 | 
				
			||||||
 | 
							RmtrDepBnkBrCode  string `json:"rmtrDepBnkBrCode,omitempty" comment:"出票人开户行行号"`  // 出票人开户行行号
 | 
				
			||||||
 | 
							RmtrDepBnkNm      string `json:"rmtrDepBnkNm,omitempty" comment:"出票人开户行行名"`      // 出票人开户行行名
 | 
				
			||||||
 | 
							RmtrAccNum        string `json:"rmtrAccNum,omitempty" comment:"出票人账户"`           // 出票人账户
 | 
				
			||||||
 | 
							AcptrNm           string `json:"acptrNm,omitempty" comment:"承兑人名称"`              // 承兑人名称
 | 
				
			||||||
 | 
							AcptrDepBnkNm     string `json:"acptrDepBnkNm,omitempty" comment:"承兑人开户行名称"`     // 承兑人开户行名称
 | 
				
			||||||
 | 
							AcptrDepBnkBrCode string `json:"acptrDepBnkBrCode,omitempty" comment:"承兑人开户行行号"` // 承兑人开户行行号
 | 
				
			||||||
 | 
							AcptrAccNum       string `json:"acptrAccNum,omitempty" comment:"承兑人账户"`          // 承兑人账户
 | 
				
			||||||
 | 
							AcptrDt           string `json:"acptrDt,omitempty" comment:"承兑日期"`               // 格式yyyy-MM-dd
 | 
				
			||||||
 | 
							PayeeDepBnkNm     string `json:"payeeDepBnkNm,omitempty" comment:"收款人开户行名称"`     // 收款人开户行名称
 | 
				
			||||||
 | 
							PayeeNm           string `json:"payeeNm,omitempty" comment:"收款人名称"`              // 收款人名称
 | 
				
			||||||
 | 
							PayeeDepBnkBrCode string `json:"payeeDepBnkBrCpde,omitempty" comment:"收款人开户行行号"` // 收款人开户行行号
 | 
				
			||||||
 | 
							PayeeAccNum       string `json:"payeeAccNum,omitempty" comment:"收款人账号"`          // 收款人账号
 | 
				
			||||||
 | 
							SignForDt         string `json:"signForDt,omitempty" comment:"签收结果获取日期"`         // 格式yyyy-MM-dd
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BatchesPayArrangeBillQueryResp 批量排款交易票据查询
 | 
				
			||||||
 | 
						BatchesPayArrangeBillQueryResp struct {
 | 
				
			||||||
 | 
							TotalRecords  int                             `json:"totalRecords,omitempty" comment:"总记录条数"`   // 交易成功时返回的用户有权限的排款票据数量
 | 
				
			||||||
 | 
							ReturnRecords int                             `json:"returnRecords,omitempty" comment:"返回记录条数"` // 交易成功时返回的本次查询获取到的排款票据数量
 | 
				
			||||||
 | 
							List          []BatchesPayArrangeBillQueryRow `json:"billInfoList" comment:"排款明细列表"`            // 排款交易明细列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						BatchesPayArrangeBillQueryRow struct {
 | 
				
			||||||
 | 
							FndarBatNum       string `json:"fndarBatNum,omitempty" comment:"外部排款批次号"`        // 外部排款批次号
 | 
				
			||||||
 | 
							DocId             string `json:"docId" comment:"排款业务编号/批次号"`                     // 单笔为业务编号,批量为批次号
 | 
				
			||||||
 | 
							FndarNum          string `json:"fndarNum,omitempty" comment:"外部排款流水号"`           // 推送的原单据外部排款流水号
 | 
				
			||||||
 | 
							SubTaskNum        string `json:"subTaskNum,omitempty" comment:"子任务编号"`           // 司库结算生成的子任务编号
 | 
				
			||||||
 | 
							SettlementMode    string `json:"settlementMode,omitempty" comment:"结算方式"`        // 02银承开票 03商承开票 04银承转让 05商承转让
 | 
				
			||||||
 | 
							SignAcc           string `json:"signAcc,omitempty" comment:"签约账号"`               // 排款付款账号
 | 
				
			||||||
 | 
							BillPkgId         string `json:"billPkgId,omitempty" comment:"票据包号"`             // 票据包编号
 | 
				
			||||||
 | 
							SubBillRng        string `json:"subBillRng,omitempty" comment:"子票区间"`            // 子票区间范围
 | 
				
			||||||
 | 
							IsSupprDt         string `json:"isSupprDt,omitempty" comment:"出票日期"`             // 格式: yyyy-MM-dd
 | 
				
			||||||
 | 
							BillRcvDt         string `json:"billRcvDt,omitempty" comment:"票据到期日期"`           // 格式: yyyy-MM-dd
 | 
				
			||||||
 | 
							IsPrmtSubpge      string `json:"isPrmtSubpge,omitempty" comment:"是否允许分包"`        // Y:可分包 N:不可分包
 | 
				
			||||||
 | 
							BillStat          string `json:"billStat,omitempty" comment:"票据状态"`              // 按码值返回
 | 
				
			||||||
 | 
							CrclFlag          string `json:"crclFlag,omitempty" comment:"流通标志"`              // 票据流通标志
 | 
				
			||||||
 | 
							BillTp            string `json:"billTp,omitempty" comment:"票据类型"`                // AC01:银承 AC02:商承
 | 
				
			||||||
 | 
							BillFaceAmt       string `json:"billFaceAmt,omitempty" comment:"票面金额"`           // 票据金额(decimal(15,2))
 | 
				
			||||||
 | 
							TfrMark           string `json:"tfrMark,omitempty" comment:"转让标记"`               // EM00:可再转让 EM01:不得转让
 | 
				
			||||||
 | 
							BankDockingMode   string `json:"bankDockingMode,omitempty" comment:"银行对接模式"`     // Y:直联 N:非直联
 | 
				
			||||||
 | 
							BillFaceMemo      string `json:"billFaceMemo,omitempty" comment:"票面备注"`          // 票据备注信息
 | 
				
			||||||
 | 
							RmtrNm            string `json:"rmtrNm,omitempty" comment:"出票人名称"`               // 出票人全称
 | 
				
			||||||
 | 
							RmtrIsSupprMemo   string `json:"rmtrIsSupprMemo,omitempty" comment:"出票人备注"`      // 出票人附加备注
 | 
				
			||||||
 | 
							RmtrDepBnkBrCode  string `json:"rmtrDepBnkBrCode,omitempty" comment:"出票人开户行行号"`  // 出票人银行联行号
 | 
				
			||||||
 | 
							RmtrDepBnkNm      string `json:"rmtrDepBnkNm,omitempty" comment:"出票人开户行行名"`      // 出票人银行全称
 | 
				
			||||||
 | 
							RmtrAccNum        string `json:"rmtrAccNum,omitempty" comment:"出票人账户"`           // 出票人银行账号
 | 
				
			||||||
 | 
							AcptrNm           string `json:"acptrNm,omitempty" comment:"承兑人名称"`              // 承兑人全称
 | 
				
			||||||
 | 
							AcptrDepBnkNm     string `json:"acptrDepBnkNm,omitempty" comment:"承兑人开户行名称"`     // 承兑人银行全称
 | 
				
			||||||
 | 
							AcptrDepBnkBrCode string `json:"acptrDepBnkBrCode,omitempty" comment:"承兑人开户行行号"` // 承兑人银行联行号
 | 
				
			||||||
 | 
							AcptrAccNum       string `json:"acptrAccNum,omitempty" comment:"承兑人账户"`          // 承兑人银行账号
 | 
				
			||||||
 | 
							AcptrDt           string `json:"acptrDt,omitempty" comment:"承兑日期"`               // 格式: yyyy-MM-dd
 | 
				
			||||||
 | 
							PayeeDepBnkNm     string `json:"payeeDepBnkNm,omitempty" comment:"收款人开户行名称"`     // 收款人银行全称
 | 
				
			||||||
 | 
							PayeeNm           string `json:"payeeNm,omitempty" comment:"收款人名称"`              // 收款人全称
 | 
				
			||||||
 | 
							PayeeDepBnkBrCode string `json:"payeeDepBnkBrCpde,omitempty" comment:"收款人开户行行号"` // 收款人银行联行号(注意原字段名拼写错误)
 | 
				
			||||||
 | 
							PayeeAccNum       string `json:"payeeAccNum,omitempty" comment:"收款人账号"`          // 收款人银行账号
 | 
				
			||||||
 | 
							SignForDt         string `json:"signForDt,omitempty" comment:"签收结果获取日期"`         // 格式: yyyy-MM-dd
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// TGBPayResp 团金宝付款
 | 
				
			||||||
 | 
						TGBPayResp struct {
 | 
				
			||||||
 | 
							ExternalBatNum string          `json:"externalBatNum" example:"BATCH20230801001" comment:"外部请求批次号"`
 | 
				
			||||||
 | 
							DealMode       string          `json:"dealMode" example:"1" comment:"处理模式:1-审批处理,2-直接出账,3-经办处理"`
 | 
				
			||||||
 | 
							CheckList      []TGBPayRespRow `json:"list" comment:"校验结果明细列表"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						TGBPayRespRow struct {
 | 
				
			||||||
 | 
							ExternalNum string `json:"externalNum" example:"TXN202308010001" comment:"明细流水号"`
 | 
				
			||||||
 | 
							RowStat     string `json:"RowStat" example:"AAAAAAA" comment:"校验状态码(AAAAAAA表示成功)"`
 | 
				
			||||||
 | 
							RowStatMsg  string `json:"rowStatMsg,omitempty" example:"校验通过" comment:"校验状态描述"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// RefundTransQueryResp 排款交易明细查询
 | 
				
			||||||
 | 
						RefundTransQueryResp struct {
 | 
				
			||||||
 | 
							TotalNum    string                `json:"totalNum" comment:"总笔数"`         // 总笔数(varchar(8))
 | 
				
			||||||
 | 
							PaymentList []RefundTransQueryRow `json:"batchInfoList" comment:"付款明细列表"` // 付款明细列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						RefundTransQueryRow struct {
 | 
				
			||||||
 | 
							ExternalBatNum string `json:"externalBatNum,omitempty" comment:"外部请求批次号"`   // 单笔付款时为空(varchar(30))
 | 
				
			||||||
 | 
							ExternalNum    string `json:"externalNum,omitempty" comment:"外部请求流水号"`      // 外部请求流水号(varchar(50))
 | 
				
			||||||
 | 
							DocBatNum      string `json:"docBatNum" comment:"付款批次号/业务编号"`               // 司库内部编号(varchar(50))
 | 
				
			||||||
 | 
							DocSrlNum      string `json:"docSrlNum,omitempty" comment:"付款明细编号"`         // 司库内部编号,单笔付款时为空(varchar(50))
 | 
				
			||||||
 | 
							PypartyAccnum  string `json:"pypartyAccnum" comment:"付方账号"`                 // 付方账号(varchar(32))
 | 
				
			||||||
 | 
							PypartyAccnm   string `json:"pypartyAccnm" comment:"付方户名"`                  // 付方户名(varchar(200))
 | 
				
			||||||
 | 
							PypartyDepbnk  string `json:"pypartyDepbnk" comment:"付方开户行"`                // 付方开户行(varchar(80))
 | 
				
			||||||
 | 
							PypartyBnk     string `json:"pypartyBnk" comment:"付方所属银行"`                  // 付方所属银行(varchar(40))
 | 
				
			||||||
 | 
							PypartyInstNum string `json:"pypartyInstNum" comment:"付方机构编码"`              // 付方机构编码(varchar(40))
 | 
				
			||||||
 | 
							PypartyInstNm  string `json:"pypartyInstNm" comment:"付方机构名称"`               // 付方机构名称(varchar(200))
 | 
				
			||||||
 | 
							RcvpyAccnum    string `json:"rcvpyAccnum" comment:"收方账号"`                   // 收方账号(varchar(32))
 | 
				
			||||||
 | 
							RcvpyAccnm     string `json:"rcvpyAccnm" comment:"收方账户名称"`                  // 收方账户名称(varchar(200))
 | 
				
			||||||
 | 
							RcvpartyDepbnk string `json:"rcvpartyDepbnk" comment:"收方开户行名"`              // 收方开户行名(varchar(80))
 | 
				
			||||||
 | 
							PyAccTp        string `json:"pyAccTp" comment:"付款种类"`                       // 00:对公 01:对私(varchar(2))
 | 
				
			||||||
 | 
							DebitAmt       string `json:"debitAmt" comment:"付款金额"`                      // 付款金额(decimal(15,2))
 | 
				
			||||||
 | 
							CurrencyID     string `json:"currencyID" comment:"币种"`                      // 币种(varchar(5)),暂时只支持人民币CNY
 | 
				
			||||||
 | 
							PyTp           string `json:"pyTp" comment:"付款类型"`                          // 付款类型(varchar(4))
 | 
				
			||||||
 | 
							Pscpt          string `json:"pscpt" comment:"附言"`                           // 单笔取付款附言,批量取收方附言(varchar(300))
 | 
				
			||||||
 | 
							PyTm           string `json:"pyTm" comment:"原付款时间"`                         // 格式:yyyyMMdd HH:mm:ss(varchar(20))
 | 
				
			||||||
 | 
							RrtanDt        string `json:"rrtanDt" comment:"退汇日期"`                       // 格式:yyyyMMdd(varchar(8))
 | 
				
			||||||
 | 
							TxnSrlNum      string `json:"txnSrlNum,omitempty" comment:"原付款系统交易流水号"`     // 司库交易明细流水号(varchar(80))
 | 
				
			||||||
 | 
							BnkSrlNum      string `json:"bnkSrlNum,omitempty" comment:"原付款银行流水号"`       // 银行交易流水号(varchar(80))
 | 
				
			||||||
 | 
							RrtanTxnSrlNum string `json:"rrtanTxnSrlNum,omitempty" comment:"退汇系统交易流水号"` // 司库交易明细流水号(varchar(80))
 | 
				
			||||||
 | 
							RrtanBnkSrlNum string `json:"rrtanBnkSrlNum,omitempty" comment:"退汇银行流水号"`   // 银行交易流水号(varchar(80))
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						//BatchSalarySendResp 3.2.11批量代发(薪酬代发)
 | 
				
			||||||
 | 
						BatchSalarySendResp struct {
 | 
				
			||||||
 | 
							ExternalBatNum string          `json:"externalBatNum" comment:"外部请求批次号"`          // 外部请求批次号(varchar(30))
 | 
				
			||||||
 | 
							DealMode       string          `json:"dealMode" comment:"处理模式"`                   // 处理模式(varchar(1)): 1.审批处理 2.直接出账 3.经办处理
 | 
				
			||||||
 | 
							InvalidList    []InvalidDetail `json:"invalidList,omitempty" comment:"校验不通过明细列表"` // 校验不通过的明细列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// InvalidDetail 校验不通过明细
 | 
				
			||||||
 | 
						InvalidDetail struct {
 | 
				
			||||||
 | 
							ExternalNum string `json:"externalNum" comment:"明细流水号"` // 明细流水号(varchar(50))
 | 
				
			||||||
 | 
							RowStat     string `json:"rowStat" comment:"校验状态"`      // 校验状态返回码(varchar(7))
 | 
				
			||||||
 | 
							RowStatMsg  string `json:"rowStatMsg" comment:"校验状态信息"` // 校验状态信息(varchar(50)),详见附录4.2制单状态
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BankInfoQueryResp 境内银行网点信息查询
 | 
				
			||||||
 | 
						BankInfoQueryResp struct {
 | 
				
			||||||
 | 
							SkRecordNum string        `json:"sk_recordNum" validate:"required,len=4,numeric"` // 分页条数
 | 
				
			||||||
 | 
							SkStartNo   string        `json:"sk_startNo" validate:"required,len=4,numeric"`   // 分页起始序号
 | 
				
			||||||
 | 
							SkTotalNum  string        `json:"sk_totalNum" validate:"required,len=4,numeric"`  // 总条数
 | 
				
			||||||
 | 
							Status      string        `json:"status" validate:"required,len=7"`               // 交易状态(7个A表示成功)
 | 
				
			||||||
 | 
							StatusText  string        `json:"statusText" validate:"required,max=254"`         // 交易状态说明
 | 
				
			||||||
 | 
							List        []BankInfoRow `json:"bnkFirmModelList" validate:"required,dive"`      // 银行信息列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BankInfoRow 银行信息明细行结构
 | 
				
			||||||
 | 
						BankInfoRow struct {
 | 
				
			||||||
 | 
							BankCode     string `json:"bankCode" validate:"required,max=10"`             // 银行类别编码
 | 
				
			||||||
 | 
							BankName     string `json:"bankName" validate:"required,max=50"`             // 银行名称
 | 
				
			||||||
 | 
							AreaId       string `json:"areaId" validate:"required,len=4"`                // 区域编码
 | 
				
			||||||
 | 
							AreaName     string `json:"areaName" validate:"required,max=200"`            // 区域名称(省+市信息)
 | 
				
			||||||
 | 
							OpenBankName string `json:"openBankName" validate:"required,max=200"`        // 开户行行名
 | 
				
			||||||
 | 
							BankFirmCode string `json:"bankFirmCode" validate:"required,len=12,numeric"` // 开户行名联行号(固定12位)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BillQueryResponse 票据查询响应结构体
 | 
				
			||||||
 | 
						BillListResp struct {
 | 
				
			||||||
 | 
							TotalRecords  int               `json:"totalRecords,omitempty" comment:"总记录条数"`   // 总记录条数(成功时返回)
 | 
				
			||||||
 | 
							ReturnRecords int               `json:"returnRecords,omitempty" comment:"返回记录条数"` // 返回记录条数(成功时返回)
 | 
				
			||||||
 | 
							BillList      []BillListRespRow `json:"dataList,omitempty" comment:"票据列表"`        // 票据列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Bill 票据详细信息结构体
 | 
				
			||||||
 | 
						BillListRespRow struct {
 | 
				
			||||||
 | 
							SignAcc          string `json:"signAcc,omitempty" comment:"签约账号"`               // 签约账号(varchar(40))
 | 
				
			||||||
 | 
							BillPkgID        string `json:"billPkgId,omitempty" comment:"票据包号"`             // 票据包号(varchar(30))
 | 
				
			||||||
 | 
							SubBillRng       string `json:"subBillRng,omitempty" comment:"子票区间"`            // 子票区间(varchar(25))
 | 
				
			||||||
 | 
							IssueDate        string `json:"isSupprDt,omitempty" comment:"出票日期"`             // 出票日期(char(10)) yyyy-MM-dd
 | 
				
			||||||
 | 
							BillDueDate      string `json:"billRcvDt,omitempty" comment:"票据到期日期"`           // 票据到期日期(char(10)) yyyy-MM-dd
 | 
				
			||||||
 | 
							AllowSubpackage  string `json:"isPrmtSubpge,omitempty" comment:"是否允许分包"`        // 是否允许分包(char(1)) Y:可分包;N:不可分包
 | 
				
			||||||
 | 
							BillStatus       string `json:"billStat,omitempty" comment:"票据状态"`              // 票据状态(char(6)) 见状态枚举
 | 
				
			||||||
 | 
							CirculationFlag  string `json:"crclFlag,omitempty" comment:"流通标志"`              // 流通标志(char(6)) 见流通标志枚举
 | 
				
			||||||
 | 
							BillType         string `json:"billTp,omitempty" comment:"票据类型"`                // 票据类型(char(4)) AC01:银承;AC02:商承
 | 
				
			||||||
 | 
							BillAmount       string `json:"billFaceAmt,omitempty" comment:"票面金额"`           // 票面金额(decimal(15,2))
 | 
				
			||||||
 | 
							TransferMark     string `json:"tfrMark,omitempty" comment:"转让标记"`               // 转让标记(char(4)) EM00:可再转让;EM01不得转让
 | 
				
			||||||
 | 
							BankDockingMode  string `json:"bankDockingMode,omitempty" comment:"银行对接模式"`     // 银行对接模式(char(1)) Y:直联;N:非直联
 | 
				
			||||||
 | 
							BillMemo         string `json:"billFaceMemo,omitempty" comment:"票面备注"`          // 票面备注(varchar(180))
 | 
				
			||||||
 | 
							DrawerName       string `json:"rmtrNm,omitempty" comment:"出票人名称"`               // 出票人名称(varchar(300))
 | 
				
			||||||
 | 
							DrawerMemo       string `json:"rmtrIsSupprMemo,omitempty" comment:"出票人备注"`      // 出票人备注(varchar(384))
 | 
				
			||||||
 | 
							DrawerBankCode   string `json:"rmtrDepBnkBrCode,omitempty" comment:"出票人开户行行号"`  // 出票人开户行行号(char(20))
 | 
				
			||||||
 | 
							DrawerBankName   string `json:"rmtrDepBnkNm,omitempty" comment:"出票人开户行行名"`      // 出票人开户行行名(varchar(300))
 | 
				
			||||||
 | 
							DrawerAccount    string `json:"rmtrAccNum,omitempty" comment:"出票人账户"`           // 出票人账户(varchar(40))
 | 
				
			||||||
 | 
							AcceptorName     string `json:"acptrNm,omitempty" comment:"承兑人名称"`              // 承兑人名称(varchar(300))
 | 
				
			||||||
 | 
							AcceptorBankName string `json:"acptrDepBnkNm,omitempty" comment:"承兑人开户行名称"`     // 承兑人开户行名称(varchar(300))
 | 
				
			||||||
 | 
							AcceptorBankCode string `json:"acptrDepBnkBrCode,omitempty" comment:"承兑人开户行行号"` // 承兑人开户行行号(char(20))
 | 
				
			||||||
 | 
							AcceptorAccount  string `json:"acptrAccNum,omitempty" comment:"承兑人账户"`          // 承兑人账户(varchar(40))
 | 
				
			||||||
 | 
							AcceptanceDate   string `json:"acptrDt,omitempty" comment:"承兑日期"`               // 承兑日期(char(10)) yyyy-MM-dd
 | 
				
			||||||
 | 
							PayeeBankName    string `json:"payeeDepBnkNm,omitempty" comment:"收款人开户行名称"`     // 收款人开户行名称(varchar(300))
 | 
				
			||||||
 | 
							PayeeName        string `json:"payeeNm,omitempty" comment:"收款人名称"`              // 收款人名称(varchar(300))
 | 
				
			||||||
 | 
							PayeeBankCode    string `json:"payeeDepBnkBrCpde,omitempty" comment:"收款人开户行行号"` // 收款人开户行行号(char(20))
 | 
				
			||||||
 | 
							PayeeAccount     string `json:"payeeAccNum,omitempty" comment:"收款人账号"`          // 收款人账号(varchar(40))
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// BillDetailResp 票据详情
 | 
				
			||||||
 | 
						BillDetailResp struct {
 | 
				
			||||||
 | 
							// 基础响应信息
 | 
				
			||||||
 | 
							BillPkgId       string `json:"billPkgId,omitempty" comment:"票据包号"`         // 票据包号
 | 
				
			||||||
 | 
							SubBillRng      string `json:"subBillRng,omitempty" comment:"子票区间"`        // 子票区间
 | 
				
			||||||
 | 
							IsSupprDt       string `json:"isSupprDt,omitempty" comment:"出票日期"`         // 出票日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
							BillRcvDt       string `json:"billRcvDt,omitempty" comment:"票据到期日期"`       // 票据到期日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
							IsPrmtSubpge    string `json:"isPrmtSubpge,omitempty" comment:"是否允许分包"`    // 是否允许分包(Y/N)
 | 
				
			||||||
 | 
							BillStat        string `json:"billStat,omitempty" comment:"票据状态"`          // 票据状态(CS01-CS06)
 | 
				
			||||||
 | 
							CrclFlag        string `json:"crclFlag,omitempty" comment:"流通标志"`          // 流通标志(TF0101-TF0501)
 | 
				
			||||||
 | 
							BillTp          string `json:"billTp,omitempty" comment:"票据类型"`            // 票据类型(AC01:银承;AC02:商承)
 | 
				
			||||||
 | 
							BillFaceAmt     string `json:"billFaceAmt,omitempty" comment:"票面金额"`       // 票面金额
 | 
				
			||||||
 | 
							TfrMark         string `json:"tfrMark,omitempty" comment:"转让标记"`           // 转让标记(EM00:可再转让;EM01:不得转让)
 | 
				
			||||||
 | 
							BankDockingMode string `json:"bankDockingMode,omitempty" comment:"银行对接模式"` // 银行对接模式(Y:直联;N:非直联)
 | 
				
			||||||
 | 
							BillFaceMemo    string `json:"billFaceMemo,omitempty" comment:"票面备注"`      // 票面备注
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 出票人信息
 | 
				
			||||||
 | 
							RmtrNm           string `json:"rmtrNm,omitempty" comment:"出票人名称"`              // 出票人名称
 | 
				
			||||||
 | 
							RmtrIsSupprMemo  string `json:"rmtrIsSupprMemo,omitempty" comment:"出票人备注"`     // 出票人备注
 | 
				
			||||||
 | 
							RmtrDepBnkBrCode string `json:"rmtrDepBnkBrCode,omitempty" comment:"出票人开户行行号"` // 出票人开户行行号
 | 
				
			||||||
 | 
							RmtrDepBnkNm     string `json:"rmtrDepBnkNm,omitempty" comment:"出票人开户行行名"`     // 出票人开户行行名
 | 
				
			||||||
 | 
							RmtrAccNum       string `json:"rmtrAccNum,omitempty" comment:"出票人账户"`          // 出票人账户
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 承兑人信息
 | 
				
			||||||
 | 
							AcptrNm           string `json:"acptrNm,omitempty" comment:"承兑人名称"`              // 承兑人名称
 | 
				
			||||||
 | 
							AcptrDepBnkNm     string `json:"acptrDepBnkNm,omitempty" comment:"承兑人开户行名称"`     // 承兑人开户行名称
 | 
				
			||||||
 | 
							AcptrDepBnkBrCode string `json:"acptrDepBnkBrCode,omitempty" comment:"承兑人开户行行号"` // 承兑人开户行行号
 | 
				
			||||||
 | 
							AcptrAccNum       string `json:"acptrAccNum,omitempty" comment:"承兑人账户"`          // 承兑人账户
 | 
				
			||||||
 | 
							AcptrDt           string `json:"acptrDt,omitempty" comment:"承兑日期"`               // 承兑日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 收款人信息
 | 
				
			||||||
 | 
							PayeeDepBnkNm     string `json:"payeeDepBnkNm,omitempty" comment:"收款人开户行名称"`     // 收款人开户行名称
 | 
				
			||||||
 | 
							PayeeNm           string `json:"payeeNm,omitempty" comment:"收款人名称"`              // 收款人名称
 | 
				
			||||||
 | 
							PayeeDepBnkBrCode string `json:"payeeDepBnkBrCode,omitempty" comment:"收款人开户行行号"` // 收款人开户行行号
 | 
				
			||||||
 | 
							PayeeAccNum       string `json:"payeeAccNum,omitempty" comment:"收款人账号"`          // 收款人账号
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 背面信息列表
 | 
				
			||||||
 | 
							FixEbillBackInfoTransportList []FixEbillBackInfo `json:"fixEbillBackInfoTransportList,omitempty" comment:"背面信息列表"`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 附加信息列表
 | 
				
			||||||
 | 
							FixEbillAddInfoList []FixEbillAddInfo `json:"fixEbillAddInfoList,omitempty" comment:"附加信息列表"`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 历史行为列表
 | 
				
			||||||
 | 
							FixEbillAddInfoDeposList []FixEbillAddInfoDepos `json:"fixEbillAddInfoDeposList,omitempty" comment:"历史行为列表"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FixEbillBackInfo struct {
 | 
				
			||||||
 | 
							BackId       string `json:"backId,omitempty" comment:"背面信息交易流水号"`    // 背面信息交易流水号
 | 
				
			||||||
 | 
							TfrFlagNm    string `json:"tfrFlagNm,omitempty" comment:"转让标记"`      // 转让标记EM00:可再转让 ;EM01不得转让
 | 
				
			||||||
 | 
							AppActNm     string `json:"appActNm,omitempty" comment:"请求方账号名称"`    // 请求方账号名称
 | 
				
			||||||
 | 
							AppAct       string `json:"appAct,omitempty" comment:"请求方账号"`        // 请求方账号
 | 
				
			||||||
 | 
							AppCode      string `json:"appCode,omitempty" comment:"请求方信用代码"`     // 请求方信用代码
 | 
				
			||||||
 | 
							AppBankNo    string `json:"appBankNo,omitempty" comment:"请求方开户行行号"`  // 请求方开户行行号
 | 
				
			||||||
 | 
							AppBankNm    string `json:"appBankNm,omitempty" comment:"请求方开户行行名"`  // 请求方开户行行名
 | 
				
			||||||
 | 
							RcvActNm     string `json:"rcvActNm,omitempty" comment:"接收方账户名称"`    // 接收方账户名称
 | 
				
			||||||
 | 
							RcvAct       string `json:"rcvAct,omitempty" comment:"接收方账号"`        // 接收方账号
 | 
				
			||||||
 | 
							RcvCode      string `json:"rcvCode,omitempty" comment:"接收方信用代码"`     // 接收方信用代码
 | 
				
			||||||
 | 
							RcBankNo     string `json:"rcBankNo,omitempty" comment:"接收方开户行行号"`   // 接收方开户行行号
 | 
				
			||||||
 | 
							RcBankNm     string `json:"rcBankNm,omitempty" comment:"接收方开户行行名"`   // 接收方开户行行名
 | 
				
			||||||
 | 
							ApplyDate    string `json:"applyDate,omitempty" comment:"申请日期"`      // 申请日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
							FixSignFlag  string `json:"fixSignFlag,omitempty" comment:"签收标识"`    // 签收标识
 | 
				
			||||||
 | 
							SignDate     string `json:"signDate,omitempty" comment:"签收日期"`       // 签收日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
							Rate         string `json:"rate,omitempty" comment:"利率"`             // 利率
 | 
				
			||||||
 | 
							RpdOpdt      string `json:"rpdOpdt,omitempty" comment:"赎回截止日"`       // 赎回截止日(yyyy-MM-dd)
 | 
				
			||||||
 | 
							RpdDudt      string `json:"rpdDudt,omitempty" comment:"赎回开放日"`       // 赎回开放日
 | 
				
			||||||
 | 
							PrsnTpyAmt   string `json:"prsnTpyAmt,omitempty" comment:"付款金额"`     // 付款金额
 | 
				
			||||||
 | 
							DshnRcd      string `json:"dshnRcd,omitempty" comment:"拒付代码"`        // 拒付代码
 | 
				
			||||||
 | 
							VstddShnrcdl string `json:"vstddShnrcdl,omitempty" comment:"拒付理由代码"` // 拒付理由代码
 | 
				
			||||||
 | 
							DshnRsn      string `json:"dshnRsn,omitempty" comment:"拒付备注信息"`      // 拒付备注信息
 | 
				
			||||||
 | 
							RcrsTyp      string `json:"rcrsTyp,omitempty" comment:"追索类型"`        // 追索类型
 | 
				
			||||||
 | 
							AgrrDat      string `json:"agrrDat,omitempty" comment:"清偿日期"`        // 清偿日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
							BackMem      string `json:"backMem,omitempty" comment:"背面备注"`        // 背面备注
 | 
				
			||||||
 | 
							WareAdr      string `json:"wareAdr,omitempty" comment:"保证人地址"`       // 保证人地址
 | 
				
			||||||
 | 
							PleDgeDt     string `json:"pleDgeDt,omitempty" comment:"解质押日期"`      // 解质押日期(yyyy-MM-dd)
 | 
				
			||||||
 | 
							Stlmthd      string `json:"stlmthd,omitempty" comment:"清算标志"`        // 清算标志
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FixEbillAddInfo struct {
 | 
				
			||||||
 | 
							RiskBillStatus    string `json:"riskBillStatus,omitempty" comment:"风险票据状态描述"`    // 风险票据状态描述
 | 
				
			||||||
 | 
							RmtrNm            string `json:"rmtrNm,omitempty" comment:"出票人名称"`               // 出票人名称
 | 
				
			||||||
 | 
							RmtrSoccrcode     string `json:"rmtrSoccrcode,omitempty" comment:"出票人社会信用代码"`    // 出票人社会信用代码
 | 
				
			||||||
 | 
							RmtrActNm         string `json:"rmtrActNm,omitempty" comment:"出票人账户名称"`          // 出票人账户名称
 | 
				
			||||||
 | 
							RmtrMemno         string `json:"rmtrMemno,omitempty" comment:"出票人办理渠道"`          // 出票人办理渠道
 | 
				
			||||||
 | 
							RmtrBillact       string `json:"rmtrBillact,omitempty" comment:"出票人票据账号"`        // 出票人票据账号
 | 
				
			||||||
 | 
							RmtrDepBnkBrCode  string `json:"rmtrDepBnkBrCode,omitempty" comment:"出票人开户行行号"`  // 出票人开户行行号
 | 
				
			||||||
 | 
							RmtrDepBnkNm      string `json:"rmtrDepBnkNm,omitempty" comment:"出票人开户行名"`       // 出票人开户行名
 | 
				
			||||||
 | 
							RmtrAccNum        string `json:"rmtrAccNum,omitempty" comment:"出票人账号"`           // 出票人账号
 | 
				
			||||||
 | 
							AcptrNm           string `json:"acptrNm,omitempty" comment:"承兑人名称"`              // 承兑人名称
 | 
				
			||||||
 | 
							AcptrSoccrcode    string `json:"acptrSoccrcode,omitempty" comment:"承兑人社会信用代码"`   // 承兑人社会信用代码
 | 
				
			||||||
 | 
							AcptrActNm        string `json:"acptrActNm,omitempty" comment:"承兑人账户名称"`         // 承兑人账户名称
 | 
				
			||||||
 | 
							AcptrMemno        string `json:"acptrMemno,omitempty" comment:"承兑人办理渠道"`         // 承兑人办理渠道
 | 
				
			||||||
 | 
							AcptrBillact      string `json:"acptrBillact,omitempty" comment:"承兑人票据账号"`       // 承兑人票据账号
 | 
				
			||||||
 | 
							AcptrDepBnkBrCode string `json:"acptrDepBnkBrCode,omitempty" comment:"承兑人开户行行号"` // 承兑人开户行行号
 | 
				
			||||||
 | 
							AcptrDepBnkNm     string `json:"acptrDepBnkNm,omitempty" comment:"承兑人开户行名"`      // 承兑人开户行名
 | 
				
			||||||
 | 
							AcptrAccNum       string `json:"acptrAccNum,omitempty" comment:"承兑人账号"`          // 承兑人账号
 | 
				
			||||||
 | 
							PayeeNm           string `json:"payeeNm,omitempty" comment:"收款人名称"`              // 收款人名称
 | 
				
			||||||
 | 
							PayeeSoccrcode    string `json:"payeeSoccrcode,omitempty" comment:"收款人社会信用代码"`   // 收款人社会信用代码
 | 
				
			||||||
 | 
							PyeeActNm         string `json:"pyeeActNm,omitempty" comment:"收款人账户名称"`          // 收款人账户名称
 | 
				
			||||||
 | 
							PyeeMemno         string `json:"pyeeMemno,omitempty" comment:"收款人办理渠道"`          // 收款人办理渠道
 | 
				
			||||||
 | 
							PyeeBillact       string `json:"pyeeBillact,omitempty" comment:"收款人票据账号"`        // 收款人票据账号
 | 
				
			||||||
 | 
							PayeeDepBnkBrCode string `json:"payeeDepBnkBrCode,omitempty" comment:"收款人开户行行号"` // 收款人开户行行号
 | 
				
			||||||
 | 
							PayeeDepBnkNm     string `json:"payeeDepBnkNm,omitempty" comment:"收款人开户行名"`      // 收款人开户行名
 | 
				
			||||||
 | 
							PayeeAccNum       string `json:"payeeAccNum,omitempty" comment:"收款人账号"`          // 收款人账号
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FixEbillAddInfoDepos struct {
 | 
				
			||||||
 | 
							EbillInfoType string `json:"ebillInfoType,omitempty" comment:"历史行为种类"` // 历史行为种类
 | 
				
			||||||
 | 
							AppNm         string `json:"appNm,omitempty" comment:"请求方名称"`          // 请求方名称
 | 
				
			||||||
 | 
							AppCode       string `json:"appCode,omitempty" comment:"请求方信用代码"`      // 请求方信用代码
 | 
				
			||||||
 | 
							AppActNm      string `json:"appActNm,omitempty" comment:"请求方账户名称"`     // 请求方账户名称
 | 
				
			||||||
 | 
							AppMemno      string `json:"appMemno,omitempty" comment:"请求方办理渠道"`     // 请求方办理渠道
 | 
				
			||||||
 | 
							AppBillact    string `json:"appBillact,omitempty" comment:"请求方票据账号"`   // 请求方票据账号
 | 
				
			||||||
 | 
							AppBankNo     string `json:"appBankNo,omitempty" comment:"请求方开户行行号"`   // 请求方开户行行号
 | 
				
			||||||
 | 
							AppBankNm     string `json:"appBankNm,omitempty" comment:"请求方开户行行名"`   // 请求方开户行行名
 | 
				
			||||||
 | 
							AppAct        string `json:"appAct,omitempty" comment:"请求方账号"`         // 请求方账号
 | 
				
			||||||
 | 
							RcvNm         string `json:"rcvNm,omitempty" comment:"接收名称"`           // 接收名称
 | 
				
			||||||
 | 
							RcvCode       string `json:"rcvCode,omitempty" comment:"接收信用代码"`       // 接收信用代码
 | 
				
			||||||
 | 
							RcvActNm      string `json:"rcvActNm,omitempty" comment:"接收账户名称"`      // 接收账户名称
 | 
				
			||||||
 | 
							RcvMemno      string `json:"rcvMemno,omitempty" comment:"接收方办理渠道"`     // 接收方办理渠道
 | 
				
			||||||
 | 
							RcvBillact    string `json:"rcvBillact,omitempty" comment:"接收方票据账号"`   // 接收方票据账号
 | 
				
			||||||
 | 
							RcBankNo      string `json:"rcBankNo,omitempty" comment:"接收方开户行行号"`    // 接收方开户行行号
 | 
				
			||||||
 | 
							RcBankNm      string `json:"rcBankNm,omitempty" comment:"接收方开户行行名"`    // 接收方开户行行名
 | 
				
			||||||
 | 
							RcvAct        string `json:"rcvAct,omitempty" comment:"接收方账号"`         // 接收方账号
 | 
				
			||||||
 | 
							WareAdr       string `json:"wareAdr,omitempty" comment:"保证人地址"`        // 保证人地址
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										300
									
								
								tysk_test.go
								
								
								
								
							
							
						
						
									
										300
									
								
								tysk_test.go
								
								
								
								
							| 
						 | 
					@ -1,15 +1,26 @@
 | 
				
			||||||
package tysk
 | 
					package tysk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
 | 
						"encoding/json"
 | 
				
			||||||
 | 
						"fmt"
 | 
				
			||||||
	"gitea.cdlsxd.cn/self-tools/tysk/tysk_constant"
 | 
						"gitea.cdlsxd.cn/self-tools/tysk/tysk_constant"
 | 
				
			||||||
	"gitea.cdlsxd.cn/self-tools/tysk/tysk_entity"
 | 
						"gitea.cdlsxd.cn/self-tools/tysk/tysk_entity"
 | 
				
			||||||
	"testing"
 | 
						"testing"
 | 
				
			||||||
	"time"
 | 
						"time"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const UserName = "LSXDWL003_ZL"
 | 
					const (
 | 
				
			||||||
 | 
						UserName   = "LSXDWL003_ZL"
 | 
				
			||||||
 | 
						RcvPyAccNm = "成都蓝色兄弟网络科技有限公司ERP"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var g = NewTysk(UserName, WithEnvTest())
 | 
					var (
 | 
				
			||||||
 | 
						g                = NewTysk(UserName, WithEnvTest())
 | 
				
			||||||
 | 
						RcvPartyDepbnkId = stringPtr("中信银行北京朝阳支行")
 | 
				
			||||||
 | 
						LinkPayFlag      = tysk_constant.CommonBoolFalse
 | 
				
			||||||
 | 
						boolFalse        = tysk_constant.CommonBoolFalse
 | 
				
			||||||
 | 
						BankId           = stringPtr("302100011114")
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func Test_GetAccountBalance(t *testing.T) {
 | 
					func Test_GetAccountBalance(t *testing.T) {
 | 
				
			||||||
	req := tysk_entity.GetAccountBalanceReq{
 | 
						req := tysk_entity.GetAccountBalanceReq{
 | 
				
			||||||
| 
						 | 
					@ -127,7 +138,7 @@ func Test_AccountsTransHisQuery(t *testing.T) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func Test_SinglePay(t *testing.T) {
 | 
					func Test_SinglePay(t *testing.T) {
 | 
				
			||||||
	// 模拟常量值
 | 
						// 模拟常量值
 | 
				
			||||||
	linkPayFlag := tysk_constant.CommonBoolFalse // 默认不联动支付
 | 
					
 | 
				
			||||||
	isCheck := tysk_constant.IsCheckRcvpartyDepbnkIdNot
 | 
						isCheck := tysk_constant.IsCheckRcvpartyDepbnkIdNot
 | 
				
			||||||
	txnType := tysk_constant.TxnCntprTpCus // 客户类型
 | 
						txnType := tysk_constant.TxnCntprTpCus // 客户类型
 | 
				
			||||||
	accType := tysk_constant.PyAccTpPub    // 对公账户
 | 
						accType := tysk_constant.PyAccTpPub    // 对公账户
 | 
				
			||||||
| 
						 | 
					@ -137,12 +148,12 @@ func Test_SinglePay(t *testing.T) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	req := tysk_entity.SinglePayReq{
 | 
						req := tysk_entity.SinglePayReq{
 | 
				
			||||||
		ExternalNum:             "MOCK123456789",
 | 
							ExternalNum:             "MOCK123456789",
 | 
				
			||||||
		LinkPayFlag:             &linkPayFlag,
 | 
							LinkPayFlag:             &LinkPayFlag,
 | 
				
			||||||
		PypPartyAccnum:          "8110701013301269598",
 | 
							PypPartyAccnum:          "8110701013301269598",
 | 
				
			||||||
		RcvPyAccnum:             "8110701012401269599",
 | 
							RcvPyAccnum:             "8110701012401269599",
 | 
				
			||||||
		RcvPyAccnm:              "成都蓝色兄弟网络科技有限公司ERP",
 | 
							RcvPyAccnm:              RcvPyAccNm,
 | 
				
			||||||
		IsCheckRcvpartyDepbnkId: &isCheck,
 | 
							IsCheckRcvpartyDepbnkId: &isCheck,
 | 
				
			||||||
		RcvPartyDepbnkId:        stringPtr("中信银行北京朝阳支行"),
 | 
							RcvPartyDepbnkId:        RcvPartyDepbnkId,
 | 
				
			||||||
		//RcvpartyBnkgId:          stringPtr("10140"),
 | 
							//RcvpartyBnkgId:          stringPtr("10140"),
 | 
				
			||||||
		TxnCntprTp:    &txnType,
 | 
							TxnCntprTp:    &txnType,
 | 
				
			||||||
		PyAccTp:       accType,
 | 
							PyAccTp:       accType,
 | 
				
			||||||
| 
						 | 
					@ -171,7 +182,7 @@ func Test_SinglePayQuery(t *testing.T) {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func Test_BatchPay(t *testing.T) {
 | 
					func Test_BatchPay(t *testing.T) {
 | 
				
			||||||
	linkPayFlag := tysk_constant.CommonBoolFalse
 | 
					
 | 
				
			||||||
	urgntFlag := tysk_constant.CommonBoolFalse
 | 
						urgntFlag := tysk_constant.CommonBoolFalse
 | 
				
			||||||
	rsrvtnFlag := tysk_constant.CommonBoolTrue
 | 
						rsrvtnFlag := tysk_constant.CommonBoolTrue
 | 
				
			||||||
	checkMode := tysk_constant.CheckModeBatch
 | 
						checkMode := tysk_constant.CheckModeBatch
 | 
				
			||||||
| 
						 | 
					@ -180,26 +191,16 @@ func Test_BatchPay(t *testing.T) {
 | 
				
			||||||
	txnType := tysk_constant.TxnCntprTpCus // 客户类型
 | 
						txnType := tysk_constant.TxnCntprTpCus // 客户类型
 | 
				
			||||||
	accType := tysk_constant.PyAccTpPub    // 对公账户
 | 
						accType := tysk_constant.PyAccTpPub    // 对公账户
 | 
				
			||||||
	rsvTime := time.Now().Add(2 * time.Minute).Format("2006-01-02 15:04")
 | 
						rsvTime := time.Now().Add(2 * time.Minute).Format("2006-01-02 15:04")
 | 
				
			||||||
	req := tysk_entity.BatchPayReq{
 | 
					
 | 
				
			||||||
		ExternalBatNum: "MOCK123456789BATCH",
 | 
						List := []tysk_entity.BatchPayList{
 | 
				
			||||||
		LinkPayFlag:    &linkPayFlag,
 | 
					 | 
				
			||||||
		PyPartyAccNum:  "8110701013301269598",
 | 
					 | 
				
			||||||
		CurrencyID:     "CNY",
 | 
					 | 
				
			||||||
		TotNbr:         "2",
 | 
					 | 
				
			||||||
		Amt:            1000.75,
 | 
					 | 
				
			||||||
		UrgntAprvFlag:  &urgntFlag,
 | 
					 | 
				
			||||||
		RsrvtnFlag:     &rsrvtnFlag,
 | 
					 | 
				
			||||||
		RsrvtnTms:      stringPtr(rsvTime),
 | 
					 | 
				
			||||||
		CheckMode:      &checkMode,
 | 
					 | 
				
			||||||
		List: []tysk_entity.BatchPayList{
 | 
					 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			ExternalNum:             "BATCH001",
 | 
								ExternalNum:             "BATCH001",
 | 
				
			||||||
			RcvPyAccNum:             "8110701012401269599",
 | 
								RcvPyAccNum:             "8110701012401269599",
 | 
				
			||||||
				RcvPyAccNm:              "成都蓝色兄弟网络科技有限公司ERP",
 | 
								RcvPyAccNm:              RcvPyAccNm,
 | 
				
			||||||
			IsInterBnk:              &isInterbnk,
 | 
								IsInterBnk:              &isInterbnk,
 | 
				
			||||||
			IsCheckRcvPartyDepBnkId: &isCheckDepBnk,
 | 
								IsCheckRcvPartyDepBnkId: &isCheckDepBnk,
 | 
				
			||||||
				RcvPartyDepBnkId:        stringPtr("中信银行北京朝阳支行"),
 | 
								RcvPartyDepBnkId:        RcvPartyDepbnkId,
 | 
				
			||||||
			//	RcvPartyBnkgId:          stringPtr("105100000017"),
 | 
								//	RcvPartyBnkgId:          stringPtr("105100000017"),
 | 
				
			||||||
			TxnCntprTp: &txnType,
 | 
								TxnCntprTp: &txnType,
 | 
				
			||||||
			PyAccTp:    accType,
 | 
								PyAccTp:    accType,
 | 
				
			||||||
| 
						 | 
					@ -210,7 +211,7 @@ func Test_BatchPay(t *testing.T) {
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			ExternalNum:             "BATCH002",
 | 
								ExternalNum:             "BATCH002",
 | 
				
			||||||
			RcvPyAccNum:             "8110701013801269600",
 | 
								RcvPyAccNum:             "8110701013801269600",
 | 
				
			||||||
				RcvPyAccNm:              "成都蓝色兄弟网络科技有限公司ERP",
 | 
								RcvPyAccNm:              RcvPyAccNm,
 | 
				
			||||||
			IsInterBnk:              &isInterbnk,
 | 
								IsInterBnk:              &isInterbnk,
 | 
				
			||||||
			IsCheckRcvPartyDepBnkId: &isCheckDepBnk,
 | 
								IsCheckRcvPartyDepBnkId: &isCheckDepBnk,
 | 
				
			||||||
			RcvPartyDepBnkId:        stringPtr("中信银行北京朝阳支行"),
 | 
								RcvPartyDepBnkId:        stringPtr("中信银行北京朝阳支行"),
 | 
				
			||||||
| 
						 | 
					@ -219,7 +220,19 @@ func Test_BatchPay(t *testing.T) {
 | 
				
			||||||
			DebitAmt:                500,
 | 
								DebitAmt:                500,
 | 
				
			||||||
			Pscpt:                   "服务费",
 | 
								Pscpt:                   "服务费",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		},
 | 
						}
 | 
				
			||||||
 | 
						req := tysk_entity.BatchPayReq{
 | 
				
			||||||
 | 
							ExternalBatNum: "MOCK123456789BATCH1",
 | 
				
			||||||
 | 
							LinkPayFlag:    &LinkPayFlag,
 | 
				
			||||||
 | 
							PyPartyAccNum:  "8110701013301269598",
 | 
				
			||||||
 | 
							CurrencyID:     "CNY",
 | 
				
			||||||
 | 
							TotNbr:         len(List),
 | 
				
			||||||
 | 
							Amt:            List[0].DebitAmt + List[1].DebitAmt,
 | 
				
			||||||
 | 
							UrgntAprvFlag:  &urgntFlag,
 | 
				
			||||||
 | 
							RsrvtnFlag:     &rsrvtnFlag,
 | 
				
			||||||
 | 
							RsrvtnTms:      stringPtr(rsvTime),
 | 
				
			||||||
 | 
							CheckMode:      &checkMode,
 | 
				
			||||||
 | 
							List:           List,
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	res, err := g.BatchPay(req)
 | 
						res, err := g.BatchPay(req)
 | 
				
			||||||
	t.Log(res, err)
 | 
						t.Log(res, err)
 | 
				
			||||||
| 
						 | 
					@ -233,7 +246,248 @@ func Test_BatchPayQuery(t *testing.T) {
 | 
				
			||||||
	t.Log(res, err)
 | 
						t.Log(res, err)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var fndarBatNum = "PayArrangeBatch123456"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_PayArrange(t *testing.T) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						payAcc := "8110701013301269598"
 | 
				
			||||||
 | 
						recAcc := tysk_entity.AccountList{"8110701012401269599", "8110701013801269600"}
 | 
				
			||||||
 | 
						// 模拟结算方式
 | 
				
			||||||
 | 
						settlementMode := tysk_constant.SettlementModePayTrans
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// 生成模拟的交易明细列表
 | 
				
			||||||
 | 
						var list = make([]tysk_entity.PayArrangeList, 0)
 | 
				
			||||||
 | 
						for k, v := range recAcc {
 | 
				
			||||||
 | 
							list = append(list, *MockPayArrangeList(fmt.Sprintf("%s-%d", fndarBatNum, k), v))
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						req := tysk_entity.PayArrangeReq{
 | 
				
			||||||
 | 
							FndarBatNum:    fndarBatNum,
 | 
				
			||||||
 | 
							PypartyAccnum:  tysk_constant.AccountNo(payAcc),
 | 
				
			||||||
 | 
							BusinessType:   stringPtr("测试类型"), // 业务类型
 | 
				
			||||||
 | 
							SettlementMode: &settlementMode,   // 结算方式
 | 
				
			||||||
 | 
							//PayRat:         stringPtr(JsonStringIgonErr([]tysk_entity.PayRatItem{{Pcode: "01", Pamt: "100", PayAccNum: "8110701013301269598"}})), // 模拟排款份额JSON
 | 
				
			||||||
 | 
							PayDt:       time.Now().Format("2006-01-02"), // 未来30天内随机日期
 | 
				
			||||||
 | 
							LinkPayFlag: &LinkPayFlag,                    // 联动支付标志
 | 
				
			||||||
 | 
							List:        list,                            // 交易明细列表
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.PayArrange(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// MockPayArrangeList 生成模拟的 PayArrangeList 数据
 | 
				
			||||||
 | 
					func MockPayArrangeList(lisName string, acc tysk_constant.AccountNo) *tysk_entity.PayArrangeList {
 | 
				
			||||||
 | 
						// 模拟交易对手类型
 | 
				
			||||||
 | 
						txnCntprTps := tysk_constant.TxnCntprTpOther
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// 模拟付款种类
 | 
				
			||||||
 | 
						pyAccTps := tysk_constant.PyAccTpPri
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// 模拟币种(这里固定为CNY,根据实际需求调整)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return &tysk_entity.PayArrangeList{
 | 
				
			||||||
 | 
							FndarNum:    lisName,    // 模拟流水号
 | 
				
			||||||
 | 
							RcvpyAccnum: acc,        // 模拟收方账号
 | 
				
			||||||
 | 
							RcvpyAccnm:  RcvPyAccNm, // 模拟收方户名
 | 
				
			||||||
 | 
							//RcvpartyDepbnkId: RcvPartyDepbnkId, // 模拟开户行
 | 
				
			||||||
 | 
							RcvpartyBnkgId: BankId,       // 模拟联行号
 | 
				
			||||||
 | 
							TxnCntprTp:     &txnCntprTps, // 交易对手类型
 | 
				
			||||||
 | 
							PyAccTp:        pyAccTps,     // 付款种类
 | 
				
			||||||
 | 
							Amt:            100,
 | 
				
			||||||
 | 
							CurrencyID:     "CNY",            // 币种
 | 
				
			||||||
 | 
							Pscpt:          "测试附言",           // 模拟附言
 | 
				
			||||||
 | 
							Rmrk:           stringPtr("备注"),  // 模拟备注
 | 
				
			||||||
 | 
							Rmrk1:          stringPtr("备用1"), // 模拟备用字段1
 | 
				
			||||||
 | 
							Rmrk2:          stringPtr("备用2"), // 模拟备用字段2
 | 
				
			||||||
 | 
							Rmrk3:          stringPtr("备用3"), // 模拟备用字段3
 | 
				
			||||||
 | 
							Rmrk4:          stringPtr("备用4"), // 模拟备用字段4
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_PayArrangeQuery(t *testing.T) {
 | 
				
			||||||
 | 
						req := tysk_entity.PayArrangeQueryReq{
 | 
				
			||||||
 | 
							FndarBatNum: fndarBatNum,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.PayArrangeQuery(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_PayArrangeBillQuery(t *testing.T) {
 | 
				
			||||||
 | 
						req := tysk_entity.PayArrangeBillQueryReq{
 | 
				
			||||||
 | 
							FndarBatNum: fndarBatNum,
 | 
				
			||||||
 | 
							StartRecord: 1,
 | 
				
			||||||
 | 
							PageNumber:  10,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.PayArrangeBillQuery(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_BatchesPayArrangeBillQuery(t *testing.T) {
 | 
				
			||||||
 | 
						req := tysk_entity.BatchesPayArrangeBillQueryReq{
 | 
				
			||||||
 | 
							StartRecord: 1,
 | 
				
			||||||
 | 
							PageNumber:  10,
 | 
				
			||||||
 | 
							StartDate:   "20250730",
 | 
				
			||||||
 | 
							EndDate:     "20250829",
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.BatchesPayArrangeBillQuery(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var (
 | 
				
			||||||
 | 
						TGBPayExternalBatNum = "BATCH202306150001"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_TGBPay(t *testing.T) {
 | 
				
			||||||
 | 
						List := []tysk_entity.TGBPayReqRow{
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								ExternalNum: fmt.Sprintf("%s-%d", TGBPayExternalBatNum, 0),
 | 
				
			||||||
 | 
								RcvpyAccnum: tysk_constant.AccountNo("8110701012401269599"),
 | 
				
			||||||
 | 
								RcvpyAccnm:  "张三",
 | 
				
			||||||
 | 
								DebitAmt:    1500.00,
 | 
				
			||||||
 | 
								Pscpt:       "工资发放",
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								ExternalNum: fmt.Sprintf("%s-%d", TGBPayExternalBatNum, 1),
 | 
				
			||||||
 | 
								RcvpyAccnum: tysk_constant.AccountNo("8110701013801269600"),
 | 
				
			||||||
 | 
								RcvpyAccnm:  "李四",
 | 
				
			||||||
 | 
								DebitAmt:    500.00,
 | 
				
			||||||
 | 
								Pscpt:       "奖金",
 | 
				
			||||||
 | 
								Rmrk:        stringPtr("季度奖金"),
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						req := tysk_entity.TGBPayReq{
 | 
				
			||||||
 | 
							ExternalBatNum:  TGBPayExternalBatNum,
 | 
				
			||||||
 | 
							LinkPayFlag:     &LinkPayFlag,
 | 
				
			||||||
 | 
							PypartyAccnum:   tysk_constant.AccountNo("8110701013301269598"),
 | 
				
			||||||
 | 
							CurrencyID:      "CNY",
 | 
				
			||||||
 | 
							TotNbr:          len(List),
 | 
				
			||||||
 | 
							Amt:             List[0].DebitAmt + List[1].DebitAmt,
 | 
				
			||||||
 | 
							ItlgPayrollType: tysk_constant.CommonBool("01"),
 | 
				
			||||||
 | 
							ItlgPreparType:  tysk_constant.ItlgPreparType("1"),
 | 
				
			||||||
 | 
							ItlgRefundFlag:  tysk_constant.ItlgRefundFlag("0"),
 | 
				
			||||||
 | 
							UrgntAprvFlag:   &boolFalse,
 | 
				
			||||||
 | 
							RsrvtnFlag:      &boolFalse,
 | 
				
			||||||
 | 
							RsrvtnTms:       stringPtr(time.Now().Add(24 * time.Hour).Format("2006-01-02 15:04:05")),
 | 
				
			||||||
 | 
							BatPscpt:        "测试批次附言",
 | 
				
			||||||
 | 
							BatRmrk:         stringPtr("测试批次备注"),
 | 
				
			||||||
 | 
							List:            List,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.TGBPay(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_RefundTransQuery(t *testing.T) {
 | 
				
			||||||
 | 
						req := tysk_entity.RefundTransQueryReq{
 | 
				
			||||||
 | 
							AccountNo:   []tysk_constant.AccountNo{"8110701013301269598", "8110701012401269599", "8110701013801269600"},
 | 
				
			||||||
 | 
							StartDate:   "20250728",
 | 
				
			||||||
 | 
							EndDate:     "20250803",
 | 
				
			||||||
 | 
							StartRecord: 1,
 | 
				
			||||||
 | 
							PageNumber:  10,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.RefundTransQuery(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var (
 | 
				
			||||||
 | 
						BatchSalarySendExternalBatNum = "BatchSalary202306150001"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_BatchSalarySend(t *testing.T) {
 | 
				
			||||||
 | 
						payrollDt := time.Now().Format("200601")
 | 
				
			||||||
 | 
						//rsvTime := time.Now().Add(24 * time.Hour).Format("2006-01-02 15:04:05")
 | 
				
			||||||
 | 
						List := []tysk_entity.BatchSalarySendRow{
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								ExternalNum:    fmt.Sprintf("%s-%d", BatchSalarySendExternalBatNum, 0),
 | 
				
			||||||
 | 
								RcvpyAccnum:    tysk_constant.AccountNo("8110701012401269599"),
 | 
				
			||||||
 | 
								RcvpyAccnm:     "张三",
 | 
				
			||||||
 | 
								DebitAmt:       1.00,
 | 
				
			||||||
 | 
								Pscpt:          "6月工资",
 | 
				
			||||||
 | 
								Rmrk:           "正式员工",
 | 
				
			||||||
 | 
								RcvpartyBnkgId: BankId,
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								ExternalNum: fmt.Sprintf("%s-%d", BatchSalarySendExternalBatNum, 1),
 | 
				
			||||||
 | 
								RcvpyAccnum: tysk_constant.AccountNo("8110701013801269600"),
 | 
				
			||||||
 | 
								RcvpyAccnm:  "李四",
 | 
				
			||||||
 | 
								DebitAmt:    2.00,
 | 
				
			||||||
 | 
								Pscpt:       "6月工资+奖金",
 | 
				
			||||||
 | 
								//RcvpartyDepbnkId: "中国建设银行上海分行",
 | 
				
			||||||
 | 
								RcvpartyBnkgId: BankId,
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						req := tysk_entity.BatchSalarySendReq{
 | 
				
			||||||
 | 
							ExternalBatNum: BatchSalarySendExternalBatNum,
 | 
				
			||||||
 | 
							LinkPayFlag:    &LinkPayFlag,
 | 
				
			||||||
 | 
							PypartyAccnum:  tysk_constant.AccountNo("8110701013301269598"),
 | 
				
			||||||
 | 
							CurrencyID:     "CNY",
 | 
				
			||||||
 | 
							TotNbr:         len(List),
 | 
				
			||||||
 | 
							Amt:            List[0].DebitAmt + List[1].DebitAmt,
 | 
				
			||||||
 | 
							PayrollDt:      payrollDt,
 | 
				
			||||||
 | 
							UrgntAprvFlag:  &boolFalse,
 | 
				
			||||||
 | 
							RsrvtnFlag:     &boolFalse,
 | 
				
			||||||
 | 
							//RsrvtnTms:      &rsvTime,
 | 
				
			||||||
 | 
							BatPscpt:   "6月工资发放",
 | 
				
			||||||
 | 
							PayrollUse: stringPtr("1"),
 | 
				
			||||||
 | 
							ExtField1:  stringPtr("PROTO1234567890"),
 | 
				
			||||||
 | 
							List:       List,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.BatchSalarySend(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_BankInfoQuery(t *testing.T) {
 | 
				
			||||||
 | 
						req := tysk_entity.BankInfoQueryReq{
 | 
				
			||||||
 | 
							AreaID:      "BCM",
 | 
				
			||||||
 | 
							SkRecordNum: 10,
 | 
				
			||||||
 | 
							SkStartNo:   1,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.BankInfoQuery(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_BillList(t *testing.T) {
 | 
				
			||||||
 | 
						//endDate := time.Now().Format("2006-01-02")
 | 
				
			||||||
 | 
						//startDate := time.Now().AddDate(0, 0, -30).Format("2006-01-02")
 | 
				
			||||||
 | 
						//
 | 
				
			||||||
 | 
						//// Set random amount range
 | 
				
			||||||
 | 
						//minAmt := 1.00
 | 
				
			||||||
 | 
						//maxAmt := minAmt + 1000000.00
 | 
				
			||||||
 | 
						req := tysk_entity.BillListReq{
 | 
				
			||||||
 | 
							QueryType: tysk_constant.QueryTypeHad,
 | 
				
			||||||
 | 
							//BsnTp:      stringPtr("17,18,51,52"),
 | 
				
			||||||
 | 
							//List: []tysk_entity.BillListReqRow{
 | 
				
			||||||
 | 
							//	{
 | 
				
			||||||
 | 
							//		SignAcc:   "1",
 | 
				
			||||||
 | 
							//		BillPkgId: "BILLPKG",
 | 
				
			||||||
 | 
							//	},
 | 
				
			||||||
 | 
							//},
 | 
				
			||||||
 | 
							//MinAmt:      float64Ptr(minAmt),
 | 
				
			||||||
 | 
							//MaxAmt:      float64Ptr(maxAmt),
 | 
				
			||||||
 | 
							//ExpDtStart:  stringPtr(startDate),
 | 
				
			||||||
 | 
							//ExpDtEnd:    stringPtr(endDate),
 | 
				
			||||||
 | 
							StartRecord: 1,
 | 
				
			||||||
 | 
							PageNumber:  50,
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						res, err := g.BillList(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_BillDetail(t *testing.T) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						req := tysk_entity.BillDetailReq{}
 | 
				
			||||||
 | 
						res, err := g.BillDetail(req)
 | 
				
			||||||
 | 
						t.Log(res, err)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// stringPtr 辅助函数:生成字符串指针
 | 
					// stringPtr 辅助函数:生成字符串指针
 | 
				
			||||||
func stringPtr(s string) *string {
 | 
					func stringPtr(s string) *string {
 | 
				
			||||||
	return &s
 | 
						return &s
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					func float64Ptr(s float64) *float64 {
 | 
				
			||||||
 | 
						return &s
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func JsonStringIgonErr(data interface{}) string {
 | 
				
			||||||
 | 
						dataByte, _ := json.Marshal(data)
 | 
				
			||||||
 | 
						return string(dataByte)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue