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 SealApplyUsedfileDownloadRequest struct {
	// <ext>core:true;format:string</ext> 【用印申请id】用印申请id 【作用】 查询需下载文档的用印申请
	SealApplyId *int64 `json:"sealApplyId"`
	// 【下载文件类型】下载文件类型 【作用】 指定需下载的文档类型，下载用印申请中的所有此类型文档 【传参】 1、取值范围：ALL（所有文档），USED_FILE（已用印文档），UPLOAD_FILE（用印文档）；不传值默认为：USED_FILE（已用印文档）。 2、当documentId（文档id）传值时，fileType（下载文件类型）不生效，只下载传入的文档id对应的文档。
	FileType string `json:"fileType,omitempty"`
	// <ext>core:true;format:string</ext> 【文档id】文档id 【作用】 根据文档id查询物理用印文档并下载。支持下载用印申请中的用印文档、已用印文档 【传参】 当documentId（文档id）传值时，fileType（下载文件类型）不生效，只下载传入的文档id对应的文档。
	DocumentId *int64                  `json:"documentId,omitempty"`
	UserInfo   *common.UserInfoRequest `json:"userInfo,omitempty"`
}

func (obj SealApplyUsedfileDownloadRequest) GetUrl() string {
	return "/seal/apply/usedfile/download"
}

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