package contract_request import ( "git.sxidc.com/student-physical-examination/contract_lock_sdk/http" "git.sxidc.com/student-physical-examination/contract_lock_sdk/model/common" ) type ContractEfprinturlRequest struct { // 【移动端页面导航头部】移动端页面导航头部 【作用】 1、移动端内嵌页面默认带有头部导航区域,且区域内提供返回按钮,嵌入其他app时会与app自带的导航头部区域航重复 2、可通过本参数控制签入移动端页面时是否提供头部导航区域 【传参】 取值范围:true(隐藏导航头部),false(显示导航头部);不传值默认为:false(显示导航头部)。 HideHeader string `json:"hideHeader,omitempty"` PageStyle *common.ContractEfprinturlPageStyleRequest `json:"pageStyle,omitempty"` // core:true 【打印人姓名】打印人姓名 【作用】 1、当使用printerContact(打印人联系方式)未查询到系统用户时,将创建对应的用户,可传入姓名初始化用户账号信息。 2、若printerContact(打印人联系方式)已有对应的用户,该参数传值无效。 PrinterName string `json:"printerName,omitempty"` // 【链接访问次数】链接访问次数 【作用】 1、限制链接访问次数,若超过次数则链接失效 2、若不传值,则访问次数无限制;若传入具体数值,则链接在访问所传具体值次数后失效,无法继续访问 【传参】 最小值:1。单位:次。 VisitNum *int64 `json:"visitNum,omitempty"` // 【页面语言】页面语言 【作用】 1、用于指定链接页面使用的语言。 2、英文和日文页面为付费功能,请确认开通英文版系统和日文版系统后使用。 【传参】 取值范围:ZH_CN(中文),EN_US(英文),JP(日文);不传值默认为:ZH_CN(中文)。 Language string `json:"language,omitempty"` // core:true 【指定部分文档进行打印】指定部分文档进行打印 【作用】 可指定部分文档进行打印,不传将展示电子签约文件中的所有文档 【传参】 格式为JSON字符串,传入多个时使用逗号隔开。 DocumentIds []string `json:"documentIds,omitempty"` // core:true 【是否校验当前用户的打印权限】是否校验当前用户的打印权限 【作用】 若校验权限,则传入的打印人必须拥有电子签约文件的打印权限才可打印,否则报错 【传参】 取值范围:true(校验),false(不校验 );不传值默认为:false(不校验)。 UseCurrentUser string `json:"useCurrentUser,omitempty"` // 【链接失效后跳转地址】链接失效后跳转地址 【作用】 当链接页面失效后页面自动跳转至指定地址(如:超过访问次数、链接已超过有效期)。 InvalidToPage string `json:"invalidToPage,omitempty"` // 【链接过期时间】链接过期时间 【作用】 用于设置获取到的链接在多长时间后过期 【传参】 1、最小值:1。单位:秒。 2、不传值默认为:1800秒(30分钟)。 ExpireTime *int64 `json:"expireTime,omitempty"` // core:true 【电子签约文件id】电子签约文件id 【作用】 查询需要打印的电子签约文件 【传参】 电子签约文件id和第三方业务系统文件id必传其一,均传入以电子签约文件id为准。 ContractId *int64 `json:"contractId,omitempty"` // core:true 【第三方业务系统文件id】第三方业务系统文件id 【作用】 查询需要打印的电子签约文件 【传参】 电子签约文件id和第三方业务系统文件id必传其一,均传入以电子签约文件id为准。 BizId string `json:"bizId,omitempty"` // core:true;format:phone 【打印人联系方式】打印人联系方式 【作用】 指定传入的联系方式作为文件打印的打印人 【传参】 1、可传入用户手机号或者邮箱,用户手机号和邮箱对应用户存在,则将对应用户作为打印人。 2、手机号允许使用大陆、港澳台、国际手机号,手机号格式为:区号+空格+手机号,例:852 9xxxxxxx ,大陆手机号可以不传区号。 3、邮箱需传入符合格式的字符串,例:xxxxxxxx@163.com。 4、若用户不存在时,则使用该字段创建用户。 5、当是否校验用户打印权限(useCurrentUser)为true时,该参数必填。 PrinterContact string `json:"printerContact,omitempty"` // format:string 【页面默认展示的文档id】页面默认展示的文档id 【作用】 可指定文档作为访问链接页面时默认展示的文档 DocumentId *int64 `json:"documentId,omitempty"` } func (obj ContractEfprinturlRequest) GetUrl() string { return "/contract/efprinturl" } func (obj ContractEfprinturlRequest) GetHttpParameter() *http.HttpParameter { parameter := http.NewGetHttpParameter() parameter.AddParam("hideHeader", obj.HideHeader) parameter.AddParam("printerName", obj.PrinterName) parameter.AddParam("visitNum", obj.VisitNum) parameter.AddParam("language", obj.Language) parameter.AddParam("documentIds", obj.DocumentIds) parameter.AddParam("useCurrentUser", obj.UseCurrentUser) parameter.AddParam("invalidToPage", obj.InvalidToPage) parameter.AddParam("expireTime", obj.ExpireTime) parameter.AddParam("contractId", obj.ContractId) parameter.AddParam("bizId", obj.BizId) parameter.AddParam("printerContact", obj.PrinterContact) parameter.AddParam("documentId", obj.DocumentId) if obj.PageStyle != nil { parameter.AddParam("pageStyle.themeColor", obj.PageStyle.ThemeColor) } return parameter }