package document_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"
"os"
)
type DocumentUploadofflinedocumentRequest struct {
// core:true 【线下签署文档】线下签署文档 【传参】 1、支持的文件格式:doc,docx,xls,xlsx,txt,pdf,rtf,jpg,png,gif,tiff,jpeg,zip,rar。 2、上传签署文档大小限制可在【电子签章管理后台-电子用印设置-文件上传限制】进行配置。
OfflineDocument *os.File `json:"offlineDocument"`
// inner-type:Json;core:true 【线下签署文档信息】线下签署文档信息
DocumentInfo string `json:"documentInfo"`
// inner-type:Json;core:true 【电子签约文件】电子签约文件 【作用】 查询需添加线下签署文档的电子签约文件 【传参】 电子签约文件id和第三方业务系统文件id必传其一,均传入以电子签约文件id为准。
ContractRequest string `json:"contractRequest"`
// inner-type:Json;core:true 【操作人】操作人 【作用】 可传入业务系统中进行添加附件的操作人,传入后将在电子签章前台的签署详情、审计中进行记录,方便后期追溯 【传参】 1、参数必传其一(除姓名外),传入多个参数时根据verificationRule(查询规则)判断。 2、若用户不存在或操作人未传时,日志将记录调用此接口的应用名称。
UserRequest string `json:"userRequest,omitempty"`
ContractRequestObject *common.ContractRequest `json:"contractRequestObject,omitempty"`
DocumentInfoObject *common.UploadofflinedocumentInfo `json:"documentInfoObject,omitempty"`
UserRequestObject *common.NameUserInfoRequest `json:"userRequestObject,omitempty"`
}
func (obj DocumentUploadofflinedocumentRequest) GetUrl() string {
return "/document/uploadofflinedocument"
}
func (obj DocumentUploadofflinedocumentRequest) GetHttpParameter() *http.HttpParameter {
parameter := http.NewPostHttpParameter()
parameter.AddFiles("offlineDocument", obj.OfflineDocument)
if obj.DocumentInfoObject != nil {
jsonBytes, _ := json.Marshal(obj.DocumentInfoObject)
parameter.AddParam("documentInfo", string(jsonBytes))
} else {
parameter.AddParam("documentInfo", obj.DocumentInfo)
}
if obj.UserRequestObject != nil {
jsonBytes, _ := json.Marshal(obj.UserRequestObject)
parameter.AddParam("userRequest", string(jsonBytes))
} else {
parameter.AddParam("userRequest", obj.UserRequest)
}
if obj.ContractRequestObject != nil {
jsonBytes, _ := json.Marshal(obj.ContractRequestObject)
parameter.AddParam("contractRequest", string(jsonBytes))
} else {
parameter.AddParam("contractRequest", obj.ContractRequest)
}
return parameter
}