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 SealCustomparamImageRequest struct {
	// <ext>core:true;format:string</ext> 【印章id】印章id
	SealId *int64 `json:"sealId,omitempty"`
	// <ext>core:true</ext> 【印章名称】印章名称 【特殊说明】 系统中可能存在同名印章，使用印章名称查询印章时，需要同时传入印章所属法人单位
	SealName string `json:"sealName,omitempty"`
	// <ext>core:true</ext> 【印章形式】印章形式 【传参】 取值范围：ELECTRONIC（电子印章），PHYSICS（物理印章），UKEY（Ukey印章），MOBILE（移动印章）；不传值默认为：ELECTRONIC（电子印章）。
	SealAttribute string `json:"sealAttribute,omitempty"`
	// <ext>core:true;format:string</ext> 【法人单位id】法人单位id 【作用】 系统中可能存在同名印章，使用印章名称查询印章时，需要同时传入印章所属法人单位 【传参】 传入多个法人单位信息时只按最高优先级查询，优先级为法人单位id>法人单位名称>统一社会信用代码/工商注册号。
	CompanyId *int64 `json:"companyId,omitempty"`
	// <ext>core:true</ext> 【法人单位名称】法人单位名称 【作用】 系统中可能存在同名印章，使用印章名称查询印章时，需要同时传入印章所属法人单位 【传参】 传入多个法人单位信息时只按最高优先级查询，优先级为法人单位id>法人单位名称>统一社会信用代码/工商注册号。
	CompanyName string `json:"companyName,omitempty"`
	// <ext>core:true</ext> 【统一社会信用代码/工商注册号】统一社会信用代码/工商注册号 【作用】 系统中可能存在同名印章，使用印章名称查询印章时，需要同时传入印章所属法人单位 【传参】 传入多个法人单位信息时只按最高优先级查询，优先级为法人单位id>法人单位名称>统一社会信用代码/工商注册号。
	RegisterNo string `json:"registerNo,omitempty"`
	// <ext>core:true</ext>【Ukey设备号】Ukey设备号  【作用】 根据设备号获取ukey印章图片
	UkeyNo                 string                         `json:"ukeyNo,omitempty"`
	SealImageFormatRequest *common.SealImageFormatRequest `json:"sealImageFormatRequest,omitempty"`
}

func (obj SealCustomparamImageRequest) GetUrl() string {
	return "/seal/customparam/image"
}

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