package seal_request

import (
	"encoding/json"
	"git.sxidc.com/student-physical-examination/contract_lock_sdk/http"
	"git.sxidc.com/student-physical-examination/contract_lock_sdk/model/common"
)

type SealElectronicApplyBindLongCertRequest struct {
	SealMultipleRequest *common.SealMultipleRequest     `json:"sealMultipleRequest"`
	CertInfo            *common.OpenSealCertInfoRequest `json:"certInfo,omitempty"`
	// <ext>core:true</ext> 【证书序列号】证书序列号 【作用】 传入单位证书的证书序列号，将指定证书绑定至当前印章，绑定后，使用该印章签署时仅可使用绑定的证书 【传参】 1、传入印章对应单位的生效中证书的序列号，序列号可通过<docs>/cert/query</docs>查询。 2、certInfo（申请电子印章证书）与certSerialNo（电子印章绑定单位长期证书）参数必传其一，均传入以申请电子印章印章证书为准
	CertSerialNo string                  `json:"certSerialNo,omitempty"`
	OperatorInfo *common.UserInfoRequest `json:"operatorInfo"`
}

func (obj SealElectronicApplyBindLongCertRequest) GetUrl() string {
	return "/seal/electronic/apply/bind/long/cert"
}

func (obj SealElectronicApplyBindLongCertRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewPostHttpParameter()
	jsonBytes, _ := json.Marshal(obj)
	parameter.SetJsonParamer(string(jsonBytes))
	return parameter
}
