package company_request

import (
	"git.sxidc.com/student-physical-examination/contract_lock_sdk/http"
)

type CompanyauthSubmitReversepayRequest struct {
	// <ext>core:true</ext> 【认证id】认证id 【传参】 参数必传其一，传入多个时只按最高优先级查询，优先级为认证id>法人单位id>法人单位名称>统一社会信用代码/工商注册号>第三方业务系统法人单位id。
	RequestId string `json:"requestId,omitempty"`
	// <ext>core:true;format:string</ext> 【法人单位id】法人单位id 【传参】 参数必传其一，传入多个时只按最高优先级查询，优先级为认证id>法人单位id>法人单位名称>统一社会信用代码/工商注册号>第三方业务系统法人单位id。
	Id *int64 `json:"id,omitempty"`
	// <ext>core:true</ext> 【法人单位名称】法人单位名称 【传参】 参数必传其一，传入多个时只按最高优先级查询，优先级为认证id>法人单位id>法人单位名称>统一社会信用代码/工商注册号>第三方业务系统法人单位id。
	Name string `json:"name,omitempty"`
	// <ext>core:true</ext> 【统一社会信用代码/工商注册号】统一社会信用代码/工商注册号 【传参】 参数必传其一，传入多个时只按最高优先级查询，优先级为认证id>法人单位id>法人单位名称>统一社会信用代码/工商注册号>第三方业务系统法人单位id。
	RegisterNo string `json:"registerNo,omitempty"`
	// <ext>core:true</ext> 【第三方业务系统法人单位id】第三方业务系统法人单位id 【传参】 参数必传其一，传入多个时只按最高优先级查询，优先级为认证id>法人单位id>法人单位名称>统一社会信用代码/工商注册号>第三方业务系统法人单位id。
	OpenCompanyId string `json:"openCompanyId,omitempty"`
	// <ext>core:true</ext> 【开户银行】开户银行 【作用】 请传入认证组织的对公账户的开户银行，民生银行需要传入具体支行，其余银行请直接传入总行
	BankName string `json:"bankName"`
	// <ext>core:true</ext> 【银行卡号】银行卡号 【作用】 请传入贵司对公账户的银行卡号
	BankCardNo string `json:"bankCardNo"`
	// <ext>core:true;format:string</ext> 【银行卡类型】银行卡类型 【作用】 仅支持对公账户打款 【传参】 取值范围：1（对公账户）；不传值默认为：1（对公账户）
	CardType *int64 `json:"cardType"`
}

func (obj CompanyauthSubmitReversepayRequest) GetUrl() string {
	return "/companyauth/submit/reversepay"
}

func (obj CompanyauthSubmitReversepayRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewPostHttpParameter()
	parameter.AddParam("requestId", obj.RequestId)
	parameter.AddParam("id", obj.Id)
	parameter.AddParam("name", obj.Name)
	parameter.AddParam("registerNo", obj.RegisterNo)
	parameter.AddParam("openCompanyId", obj.OpenCompanyId)
	parameter.AddParam("bankName", obj.BankName)
	parameter.AddParam("bankCardNo", obj.BankCardNo)
	parameter.AddParam("cardType", obj.CardType)
	return parameter
}
