136 lines
16 KiB
Go
136 lines
16 KiB
Go
package tysk_entity
|
||
|
||
import (
|
||
"gitea.cdlsxd.cn/self-tools/tysk/tysk_constant"
|
||
)
|
||
|
||
type (
|
||
AccountList []tysk_constant.AccountNo
|
||
|
||
Page struct {
|
||
StartRecord int32 `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
|
||
PageNumber int32 `json:"pageNumber"` //每次查询请求的记录数量,最多支持100条记录
|
||
}
|
||
|
||
GetAccountBalanceReq struct {
|
||
AccountNo AccountList `json:"userDataList.accountNo"` // 用户有查询权限的银行账号
|
||
}
|
||
|
||
TodayTransHisReq struct {
|
||
AccountNo AccountList `json:"userDataList.accountNo"`
|
||
TranType tysk_constant.TranType `json:"tranType"` //01:所有 02:账户支出(借) 03:账户收入(贷)
|
||
StartRecord int32 `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
|
||
PageNumber int32 `json:"pageNumber"` //每次查询请求的记录数量,最多支持100条记录
|
||
}
|
||
|
||
AccountInfoReq struct {
|
||
StartRecord int32 `json:"startRecord"` //查询开始的记录编号,从1开始,超过最大记录数将返回空列表
|
||
PageNumber int32 `json:"pageNumber"` //每次查询请求的记录数量,最多支持100条记录
|
||
BlngBnkId *tysk_constant.BankCode `json:"blngBnkId,omitempty"` //所属银行
|
||
AccCgyId *tysk_constant.AccCgyId `json:"tranType,omitempty"` //账户性质(原:账户类型),1:一般账户 2:基本账户 3:专用账户 4:临时账户,默认为全部
|
||
AccTpId *tysk_constant.AccTpId `json:"accTpId,omitempty"` //存款类型(原:账户种类),1:活期 2:定期 3:通知 4:活期保证金 5:定期保证金,默认为全部
|
||
AccStatId *tysk_constant.AccStatId `json:"accStatId,omitempty"` //账户状态,1:正常 2:销户 3:司法冻结 4:普通冻结 5:睡眠 6:挂失 7:冻结,默认为全部
|
||
IsOpnDirconId *tysk_constant.IsOpnDirconId `json:"IsOpnDirconId,omitempty"` //联网方式(原:是否直联),1:直联 2:非直联 3:SWIFT,默认为全部
|
||
AccCharId *tysk_constant.AccCharId `json:"accCharId,omitempty"` //联网方式(原:是否直联),1:实账户 2:登记簿,默认为全部
|
||
AccStyId *tysk_constant.AccStyId `json:"accStyId,omitempty"` //账户类型,0:境内普通账户 1:FTE 2:NRA 3:FTN 4:OSA 5:境外其他账户,默认为全部
|
||
IsFrgnAccId *tysk_constant.IsFrgnAccId `json:"isFrgnAccId,omitempty"` //境内/境外,0:境内 1:境外,默认为全部
|
||
}
|
||
|
||
// Request 表示银企直联接口请求参数
|
||
ReceiptApplyReq struct {
|
||
ClientID string `json:"clientID" validate:"required,max=20"` // 客户查询自定义的流水号,用于查询结果信息,需唯一
|
||
AccountNo tysk_constant.AccountNo `json:"userDataList.accountNo"` // 用户有查询权限的银行账号
|
||
StartDate string `json:"startDate"` // 查询起始日期(格式:YYYYMMDD)
|
||
EndDate string `json:"endDate"` // 查询终止日期(格式:YYYYMMDD)
|
||
}
|
||
|
||
// ReceiptQueryReq 电子回单文件查询请求参数
|
||
ReceiptQueryReq struct {
|
||
ClientID string `json:"clientID" comment:"记录申请编号" validate:"required,max=20"` // SKEDDRSQ交易流水号(varchar(20),必填,仅支持数字或字母组合)
|
||
StartDate string `json:"startDate,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-账户收入)
|
||
StartRecord int32 `json:"startRecord" comment:"起始记录号" validate:"required,numeric,min=1"` // 查询起始记录编号(char(4),必填,从1开始)
|
||
PageNumber int32 `json:"pageNumber" comment:"请求记录条数" validate:"required,numeric,max=100"` // 每页记录数(char(4),必填,最大100条)
|
||
}
|
||
|
||
// ReceiptDownloadReq 银企直联接口请求参数
|
||
ReceiptDownloadReq struct {
|
||
FileType tysk_constant.FileType `json:"fileType,omitempty" comment:"文件格式"` // 文件格式(char(1),选填):PDF/OFD,默认PDF
|
||
RcptNums []string `json:"userDataList.rcptNum" comment:"回单下载列表" validate:"required,dive"` // 回单下载列表(必填)
|
||
}
|
||
|
||
//TransHisQueryApplyReq 历史明细查询申请
|
||
TransHisQueryApplyReq struct {
|
||
ClientID string `json:"clientId" comment:"记录申请编号" validate:"required,max=20"` // 客户查询自定义的流水号(varchar(20),必填,仅支持数字或字母组合)
|
||
AccountNo tysk_constant.AccountNo `json:"accountNo" comment:"账号" validate:"required,max=40"` // 银行账号(varchar(40),必填,允许输入0-9a-zA-Z空格-?:().,'+/,不能首尾空格,至少一个数字)
|
||
StartDate string `json:"startDate" comment:"起始日期" validate:"required,len=8"` // 查询开始日期(char(8),必填,yyyyMMdd格式,与结束日期间隔≤95天)
|
||
EndDate string `json:"endDate" comment:"终止日期" validate:"required,len=8"` // 查询结束日期(char(8),必填,yyyyMMdd格式,与开始日期间隔≤95天)
|
||
}
|
||
|
||
//TransHisQueryReq 历史明细结果查询
|
||
TransHisQueryReq struct {
|
||
ClientID string `json:"clientId" comment:"记录申请编号" validate:"required,max=20,alphanum"` // 交易申请流水号(varchar(20),必填,仅支持数字或字母组合)
|
||
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输入的终止日期)
|
||
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开始)
|
||
PageNumber int32 `json:"pageNumber" comment:"请求记录条数" validate:"required,len=4,numeric,max=100"` // 每页记录数(char(4),必填,最大100条)
|
||
}
|
||
|
||
// BalanceHisQueryApplyReq 历史余额查询申请
|
||
BalanceHisQueryApplyReq struct {
|
||
ClientID string `json:"clientID" comment:"记录申请编号" validate:"required,max=20,alphanum"` // 客户查询自定义的流水号(varchar(20),必填,仅支持数字或字母组合)
|
||
StartDate string `json:"startDate" comment:"起始日期" validate:"required,len=8,datetime=20060102"` // 查询余额范围的开始日期(char(8),必填,yyyyMMdd格式)
|
||
EndDate string `json:"endDate" comment:"终止日期" validate:"required,len=8,datetime=20060102"` // 查询余额范围的结束日期(char(8),必填,yyyyMMdd格式)
|
||
AccountNo AccountList `json:"userDataList.accountNo"` // 银行账号列表(varchar(40),必填,允许输入0-9a-zA-Z空格-?:().,'+/,不能首尾空格,至少一个数字)
|
||
}
|
||
|
||
// BalanceHisQueryReq 历史余额查询请求
|
||
BalanceHisQueryReq struct {
|
||
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格式)
|
||
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开始)
|
||
PageNumber int32 `json:"pageNumber" comment:"请求记录条数" validate:"required,len=4,numeric,max=20"` // 每次查询请求的记录数量(char(4),必填,最多支持20条记录)
|
||
}
|
||
|
||
// AccountsTransHisQueryReq 多账户历史明细查询
|
||
AccountsTransHisQueryReq struct {
|
||
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格式)
|
||
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开始)
|
||
PageNumber int32 `json:"pageNumber" validate:"required,len=4,numeric,max=100"` // 请求记录条数(char(4),必填,最多100条)
|
||
AccountNo AccountList `json:"userDataList.accountNo" validate:"required,dive"` // 账号列表(必填,最多10个账号)
|
||
}
|
||
|
||
// SinglePayReq 单笔支付
|
||
SinglePayReq struct {
|
||
Action string `json:"action" comment:"接口请求代码" validate:"required,max=8"` // 标识要请求的接口,交易代码
|
||
UserName string `json:"userName" comment:"登录名" validate:"required,max=50"` // 银企直联用户名
|
||
ExternalNum string `json:"externalNum" comment:"外部请求流水号" validate:"required,max=50"` // 最大长度为50,不能重复
|
||
LinkPayFlag *tysk_constant.CommonBool `json:"linkPayFlag" comment:"联动支付" validate:"omitempty,oneof=00 01"` // 00:否,01:是 默认为否
|
||
PypartyAccnum string `json:"pypartyAccnum" comment:"付方账号" validate:"required,max=32,accountFormat"` // 允许输入特定字符,至少一个数字
|
||
RcvpyAccnum string `json:"rcvpyAccnum" comment:"收方账号" validate:"required,max=32,accountFormat"` // 允许输入特定字符,至少一个数字
|
||
RcvpyAccnm string `json:"rcvpyAccnm" comment:"收方户名" validate:"required,max=300,nameFormat"` // 最大支持长度300(汉字占3,非汉字占1)
|
||
IsCheckRcvpartyDepbnkId *tysk_constant.IsCheckRcvpartyDepbnkId `json:"isCheckRcvpartyDepbnkId" comment:"是否准确校验开户行行名" validate:"omitempty,oneof=00 01"` // 00:是 01:否 默认为是 当该字段为00是时:同时传入开户行行名和联行号,以联行号为准; 当该字段为01否时:同时传入开户行行名和联行号,以联行号为准;只传入开户行行名直接返显开户行,不再校验开户行行名在境内网点表是否存在,若用户上送的开户行行名匹配不上所属银行,则【收方银行】展示--,【是否跨行】字段,若用户上送,则以用户上送的为准,若用户未上送,收方银行为空,则无法按照收付方银行判断出是否跨行,则是否跨行默认为是;若用户上送的开户行行名匹配不出联行号时,则【收方联行号】、【收方地区】展示为--;只传入联行号,以联行号为准。
|
||
RcvpartyDepbnkId *string `json:"rcvpartyDepbnkId" comment:"收方开户行" validate:"omitempty,max=80"` // 收方开户行
|
||
RcvpartyBnkgId *string `json:"rcvpartyBnkgId" comment:"收方联行号" validate:"omitempty,max=40"` // 收方联行号
|
||
TxnCntprTp *tysk_constant.TxnCntprTp `json:"txnCntprTp" comment:"交易对手类型" validate:"omitempty,oneof=01 02 03 04"` // 客户:01 供应商:02 经销商:03 其他:04
|
||
PyAccTp tysk_constant.PyAccTp `json:"pyAccTp" comment:"付款种类" validate:"required,oneof=00 01"` // 00:对公 01:对私
|
||
Amt float64 `json:"amt" comment:"付款金额" validate:"required,numeric,min=0.01,max=9999999999999.99"` // 整数最长13位,2位小数
|
||
CurrencyID string `json:"currencyID" comment:"币种" validate:"required,oneof=CNY"` // 币种仅支持人民币(CNY)
|
||
IsInterbnk *tysk_constant.IsInterbnk `json:"isInterbnk" comment:"是否跨行" validate:"omitempty,oneof=00 01"` // 00:不跨行 01:跨行
|
||
UrgntAprvFlag *tysk_constant.CommonBool `json:"urgntAprvFlag" comment:"加急审批" validate:"omitempty,oneof=00 01"` // 00:否,01:是 默认为否
|
||
PyTmlnsFlag *tysk_constant.CommonBool `json:"pyTmlnsFlag" comment:"预约付款" validate:"omitempty,oneof=00 01"` // 00:否 01:是 默认为否
|
||
RsrvtnTms string `json:"rsrvtnTms" comment:"预约时间" validate:"omitempty,datetime=2006-01-02 15:04:05,timeRange"` // 预约时间格式 yyyy-MM-dd HH:mm:ss,时间范围06:00-22:00
|
||
Pscpt string `json:"pscpt" comment:"附言" validate:"required,max=300,noteFormat"` // 银行附言,最大支持长度300(汉字占3,非汉字占1)
|
||
Rmrk string `json:"rmrk" comment:"备注" validate:"omitempty,max=120"` // 最大长度为120
|
||
Rmrk1 string `json:"rmrk1" comment:"备用字段1" validate:"omitempty,max=600"` // 最大长度为600
|
||
Rmrk2 string `json:"rmrk2" comment:"备用字段2" validate:"omitempty,max=600"` // 最大长度为600
|
||
Rmrk3 string `json:"rmrk3" comment:"备用字段3" validate:"omitempty,max=600"` // 最大长度为600
|
||
Rmrk4 string `json:"rmrk4" comment:"备用字段4" validate:"omitempty,max=600"` // 最大长度为600
|
||
}
|
||
)
|