ContractViewurlRequest.go 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. package contract_request
  2. import (
  3. "git.sxidc.com/student-physical-examination/contract_lock_sdk/http"
  4. "git.sxidc.com/student-physical-examination/contract_lock_sdk/model/common"
  5. )
  6. type ContractViewurlRequest struct {
  7. // 【是否显示“更多操作”按钮】是否显示“更多操作”按钮 【传参】 取值范围:true(显示“更多操作”按钮),false(隐藏“更多操作”按钮);默认为:true(显示“更多操作”按钮)
  8. CanMoreOperation string `json:"canMoreOperation,omitempty"`
  9. // 【是否展示文件列表】是否展示文件列表 【传参】 取值范围:true(展示文件列表),false(隐藏文件列表);默认为:true(展示文件列表)
  10. CanShowDocumentList string `json:"canShowDocumentList,omitempty"`
  11. // 【登录按钮展示文案】登录按钮展示文案 【作用】 当允许用户登录系统操作文件时,页面中会展示登录按钮,可自定义按钮的文案,例如根据业务系统逻辑定义为“前往签署” 【传参】 不传值默认为:登录。
  12. LoginCopywriting string `json:"loginCopywriting,omitempty"`
  13. // 【链接访问次数】链接访问次数 【作用】 1、限制链接访问次数,若超过次数则链接失效 2、若不传值,则访问次数无限制;若传入具体数值,则链接在访问所传具体值次数后失效,无法继续访问 【传参】 最小值:1。单位:次。
  14. VisitNum *int64 `json:"visitNum,omitempty"`
  15. // 【是否展示签名验证栏】是否展示签名验证栏 【传参】 取值范围:true(展示签名验证栏),false(隐藏签名验证栏);不传值默认为:true(展示签名验证栏)。
  16. CanShowSignatureDetail string `json:"canShowSignatureDetail,omitempty"`
  17. // 【是否展示返回按钮】是否展示返回按钮 【传参】 取值范围:true(展示返回按钮),false(隐藏返回按钮);不传值默认为:false(隐藏返回按钮)。
  18. CanReturn string `json:"canReturn,omitempty"`
  19. // 【页面语言】页面语言 【作用】 1、用于指定链接页面使用的语言 2、英文和日文页面为付费功能,请确认开通英文版系统和日文版系统后使用 【传参】 取值范围:ZH_CN(中文),EN_US(英文),JP(日文);不传值默认为:ZH_CN(中文)。
  20. Language string `json:"language,omitempty"`
  21. // 【链接失效后跳转地址】链接失效后跳转地址 【作用】 当链接页面失效后页面自动跳转至指定地址(如:超过访问次数、链接已超过有效期)
  22. InvalidToPage string `json:"invalidToPage,omitempty"`
  23. // 【页面预览类型】页面预览类型 【作用】 控制访问链接时默认跳转的页面 【传参】 取值范围:DETAIL(详情页),CONTENT(电子签约正文);默认为:DETAIL(详情页)
  24. PageType string `json:"pageType,omitempty"`
  25. // 【是否展示线下签署附件上传按钮】是否展示线下签署附件上传按钮 【传参】 取值范围:true(展示线下签署附件上传按钮),false(隐藏线下签署附件上传按钮);默认为:true(展示线下签署附件上传按钮)
  26. AllowOffline string `json:"allowOffline,omitempty"`
  27. // 【是否展示打印按钮】是否展示打印按钮 【传参】 取值范围:true(展示打印按钮),false(隐藏打印按钮);不传值默认为:false(隐藏打印按钮)。
  28. AllowPrint string `json:"allowPrint,omitempty"`
  29. // 【是否展示普通附件上传按钮】是否展示普通附件上传按钮 【传参】 取值范围:true(展示普通附件上传按钮),false(隐藏普通附件上传按钮);默认为:true(展示普通附件上传按钮)
  30. AllowAttachment string `json:"allowAttachment,omitempty"`
  31. ViewUser *common.ContractViewurlViewUserRequest `json:"viewUser,omitempty"`
  32. // <ext>core:true</ext> 【第三方业务系统文件ID】第三方业务系统文件ID 【作用】 查询需浏览页面的电子签约文件 【传参】 电子签约文件id和第三方业务系统文件id必传其一,均传入以电子签约文件id为准
  33. BizId string `json:"bizId,omitempty"`
  34. // 【允许用户登录系统操作文件】允许用户登录系统操作文件 【作用】 1、当前接口不会根据操作人查询用户对当前文件的操作权限,如果希望在核验用户身份后,根据用户自身的权限对文件继续进行操作,可以展示登录按钮,让用户登录系统操作文件 2、用户完成登录操作后,将根据登录用户的权限展示文件内容和文件操作,如果用户登录后没有该文件的查看权限,也会出现无权限查看的情况 3、用户点击登录时,如果当前浏览器缓存中存在电子签章系统的生效中的用户登录信息,不需要重复进行登录,直接会以该用户身份刷新文件页面进行后续操作 【传参】 取值范围:true(允许),false(不允许);不传值默认为:false(不允许)。
  35. AllowLogin *bool `json:"allowLogin,omitempty"`
  36. // 【是否展示电子签约正文导航栏】是否展示电子签约正文导航栏 【传参】 取值范围:true(展示电子签约正文导航栏),false(隐藏电子签约正文导航栏);默认为:true(展示电子签约正文导航栏)
  37. AllowTab string `json:"allowTab,omitempty"`
  38. // 【是否展示下载按钮】是否展示下载按钮 【传参】 取值范围:true(展示下载按钮),false(隐藏下载按钮);默认为:false(隐藏下载按钮)
  39. AllowDownload string `json:"allowDownload,omitempty"`
  40. // 【移动端页面导航头部】移动端页面导航头部 【作用】 1、移动端内嵌页面默认带有头部导航区域,且区域内提供返回按钮,嵌入其他app时会与app自带的导航头部区域航重复 2、可通过本参数控制签入移动端页面时是否提供头部导航区域 【传参】 取值范围:true(隐藏导航头部),false(显示导航头部);不传值默认为:false(显示导航头部)。
  41. HideHeader string `json:"hideHeader,omitempty"`
  42. PageStyle *common.ContractViewurlPageStyleRequest `json:"pageStyle,omitempty"`
  43. // 【是否展示签署详情按钮】是否展示签署详情按钮 【传参】 取值范围:true(展示签署详情按钮),false(隐藏签署详情按钮);默认为:false(隐藏签署详情按钮)
  44. CanViewDetail string `json:"canViewDetail,omitempty"`
  45. // 【链接有效期】链接有效期 【作用】 1、用于设置获取到的链接在多长时间后过期 2、参数不传值时,链接有效期取电子签章管理后台设置的“接口页面默认有效期 3、参数传入时长超过电子签章管理后台设置的“接口页面最大有效期天数”时,将以后台设置的有效期为准 【传参】 最小值:1。单位:秒。
  46. ExpireTime *int64 `json:"expireTime,omitempty"`
  47. // <ext>core:true;format:string</ext> 【电子签约文件ID】电子签约文件ID 【作用】 查询需浏览页面的电子签约文件 【传参】 电子签约文件id和第三方业务系统文件id必传其一,均传入以电子签约文件id为准
  48. ContractId *int64 `json:"contractId,omitempty"`
  49. // 【是否展示存证报告】是否展示存证报告 【传参】 取值范围:true(展示),false(不展示);不传值默认为:true(展示)。
  50. AllowViewEvidence string `json:"allowViewEvidence,omitempty"`
  51. // <ext>format:string</ext> 【页面默认展示的文档ID】页面默认展示的文档ID 【作用】 电子签约中包含多个签署文档时,可指定页面默认展示的文档 【特殊说明】 仅控制默认展示哪份文档,但是用户仍然可以手动切换查看其他文档
  52. DocumentId *int64 `json:"documentId,omitempty"`
  53. }
  54. func (obj ContractViewurlRequest) GetUrl() string {
  55. return "/contract/viewurl"
  56. }
  57. func (obj ContractViewurlRequest) GetHttpParameter() *http.HttpParameter {
  58. parameter := http.NewGetHttpParameter()
  59. parameter.AddParam("canMoreOperation", obj.CanMoreOperation)
  60. parameter.AddParam("canShowDocumentList", obj.CanShowDocumentList)
  61. parameter.AddParam("loginCopywriting", obj.LoginCopywriting)
  62. parameter.AddParam("visitNum", obj.VisitNum)
  63. parameter.AddParam("canShowSignatureDetail", obj.CanShowSignatureDetail)
  64. parameter.AddParam("canReturn", obj.CanReturn)
  65. parameter.AddParam("language", obj.Language)
  66. parameter.AddParam("invalidToPage", obj.InvalidToPage)
  67. parameter.AddParam("pageType", obj.PageType)
  68. parameter.AddParam("allowOffline", obj.AllowOffline)
  69. parameter.AddParam("allowPrint", obj.AllowPrint)
  70. parameter.AddParam("allowAttachment", obj.AllowAttachment)
  71. parameter.AddParam("bizId", obj.BizId)
  72. parameter.AddParam("allowLogin", obj.AllowLogin)
  73. parameter.AddParam("allowTab", obj.AllowTab)
  74. parameter.AddParam("allowDownload", obj.AllowDownload)
  75. parameter.AddParam("hideHeader", obj.HideHeader)
  76. parameter.AddParam("canViewDetail", obj.CanViewDetail)
  77. parameter.AddParam("expireTime", obj.ExpireTime)
  78. parameter.AddParam("contractId", obj.ContractId)
  79. parameter.AddParam("allowViewEvidence", obj.AllowViewEvidence)
  80. parameter.AddParam("documentId", obj.DocumentId)
  81. if obj.ViewUser != nil {
  82. parameter.AddParam("viewUser.accountNo", obj.ViewUser.AccountNo)
  83. parameter.AddParam("viewUser.openUserId", obj.ViewUser.OpenUserId)
  84. parameter.AddParam("viewUser.email", obj.ViewUser.Email)
  85. parameter.AddParam("viewUser.cardNo", obj.ViewUser.CardNo)
  86. parameter.AddParam("viewUser.number", obj.ViewUser.Number)
  87. parameter.AddParam("viewUser.name", obj.ViewUser.Name)
  88. parameter.AddParam("viewUser.userId", obj.ViewUser.UserId)
  89. parameter.AddParam("viewUser.contact", obj.ViewUser.Contact)
  90. parameter.AddParam("viewUser.mobile", obj.ViewUser.Mobile)
  91. }
  92. if obj.PageStyle != nil {
  93. parameter.AddParam("pageStyle.themeColor", obj.PageStyle.ThemeColor)
  94. }
  95. return parameter
  96. }