package seal_request

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

type SealListRequest struct {
	// 【印章形态】印章形态：PHYSICS(\"物理印章\"),ELECTRONIC(\"电子印章\"),MOBILE(\"移动印章\"),UKEY(\"ukey印章\"),不传默认查询电子印章
	SealAttribute string `json:"sealAttribute,omitempty"`
	// 【法人单位三方业务id】法人单位三方业务id
	OpenCompanyId string `json:"openCompanyId,omitempty"`
	// 【法人单位名称】法人单位名称
	Name string `json:"name,omitempty"`
	// 【法人单位ID】法人单位ID
	Id *int64 `json:"id,omitempty"`
	// 【印章状态查询参数】印章状态查询参数  ：ALL(查询所有印章),WAIT_CREATE(待制作),NORMAL(正常),FREEZE(冻结),DELETE(删除),INVALID(失效),REVOKE(注销),REVOKING(注销中),CHANGING(变更中);不传默认NORMAL
	SealQueryStatus string `json:"sealQueryStatus,omitempty"`
	// 【印章类型】印章类型 参考电子签约签署平台“印章类型设置”中的类型
	SealCategoryName string `json:"sealCategoryName,omitempty"`
	// 【统一社会信用代码】统一社会信用代码
	RegisterNo string `json:"registerNo,omitempty"`
}

func (obj SealListRequest) GetUrl() string {
	return "/seal/list"
}

func (obj SealListRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewGetHttpParameter()
	parameter.AddParam("sealAttribute", obj.SealAttribute)
	parameter.AddParam("openCompanyId", obj.OpenCompanyId)
	parameter.AddParam("name", obj.Name)
	parameter.AddParam("id", obj.Id)
	parameter.AddParam("sealQueryStatus", obj.SealQueryStatus)
	parameter.AddParam("sealCategoryName", obj.SealCategoryName)
	parameter.AddParam("registerNo", obj.RegisterNo)
	return parameter
}
