package seal_request

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

type SealRecordsRequest struct {
	// 【印章形态】印章形态：PHYSICS(物理印章),ELECTRONIC(电子印章)
	SealAttribute string `json:"sealAttribute,omitempty"`
	// 【印章名称】印章名称
	SealName string `json:"sealName,omitempty"`
	// 【契约锁系统法人单位唯一ID】契约锁系统法人单位唯一ID
	CompanyId *int64 `json:"companyId,omitempty"`
	// 【印章ID】印章ID
	SealId *int64 `json:"sealId,omitempty"`
	// 【三方业务系统id】三方业务系统id，创建法人单位不指定由契约锁系统默认生成
	OpenCompanyId string `json:"openCompanyId,omitempty"`
	// 【法人单位名称】法人单位名称
	CompanyName string `json:"companyName,omitempty"`
	// 【开始时间】开始时间，格式：yyyy-MM-dd HH:mm:ss
	StartTime string `json:"startTime,omitempty"`
	// 【结束时间】结束时间，格式：yyyy-MM-dd HH:mm:ss
	EndTime string `json:"endTime,omitempty"`
	// 【印章类型】印章类型 参考电子签约签署平台“印章类型设置”中的类型
	SealCategoryName string `json:"sealCategoryName,omitempty"`
	// 【统一社会信用代码】统一社会信用代码
	RegisterNo string `json:"registerNo,omitempty"`
}

func (obj SealRecordsRequest) GetUrl() string {
	return "/seal/records"
}

func (obj SealRecordsRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewGetHttpParameter()
	parameter.AddParam("sealAttribute", obj.SealAttribute)
	parameter.AddParam("sealName", obj.SealName)
	parameter.AddParam("companyId", obj.CompanyId)
	parameter.AddParam("sealId", obj.SealId)
	parameter.AddParam("openCompanyId", obj.OpenCompanyId)
	parameter.AddParam("companyName", obj.CompanyName)
	parameter.AddParam("startTime", obj.StartTime)
	parameter.AddParam("endTime", obj.EndTime)
	parameter.AddParam("sealCategoryName", obj.SealCategoryName)
	parameter.AddParam("registerNo", obj.RegisterNo)
	return parameter
}
