package company_request

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

type CompanyauthReversepayConfirmRequest 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;format:string</ext> 【打款金额】打款金额 【作用】 输入收到的随机打款金额，校验汇款金额是否正确
	Amount *float64 `json:"amount"`
	// <ext>core:true</ext> 【打款随机码】打款随机码 【作用】 1、反向打款认证时如希望校验更加严格，系统支持在打款的同时在打款附言中发送随机码，认证单位需要同时回填正确的打款金额和随机码后才能完成打款校验 2、此参数可传入打款附言中的随机码，用于校验 3、此功能需要联系电子签章平台客服开通，默认不发送随机码，当未开启功能时传入此参数不生效
	RandomCode string `json:"randomCode,omitempty"`
}

func (obj CompanyauthReversepayConfirmRequest) GetUrl() string {
	return "/companyauth/reversepay/confirm"
}

func (obj CompanyauthReversepayConfirmRequest) 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("amount", obj.Amount)
	parameter.AddParam("randomCode", obj.RandomCode)
	return parameter
}
