tysk/tysk_entity/sk_req.go

136 lines
16 KiB
Go
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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"` // 0001:是 默认为否
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"` // 0001:是 默认为否
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
}
)