签署时自行添加签署控件
使用场景
特性: 文件发起合同时,通过设置
SignBeanTag = 1可以允许签署方在签署时自行拖拽签署控件后再进行签署。
适用场景: 文件发起的合同中,某些签署方签署方签署位置固定(发起时预设
SignComponents),某些签署方签署位置待定(需签署人在签署时自行拖拽添加)。使用限制:
- 仅在 通过文件创建签署流程ChannelCreateFlowByFiles接口生效,模板发起不支持该能力。
- 如果所有签署方都预设了
SignComponents,会自动把合同SignBeanTag降级为 0(等同于普通签署流程)。 - 若部分签署方在在发起时预设了
SignComponents,则该签署方不支持在签署时拖拽签署控件。 - 无预设
SignComponents的签署方支持在签署时拖拽签署控件。 - 无预设
SignComponents的签署方不支持自动签。 - 无预设
SignComponents的签署方,可以通过参数FlowApproverInfo.AddSignComponentsLimits明确规定签署方能在签署时可拖拽的签署控件类型(骑缝章、普通章、法人章等)、具体的印章ID或印章类型、个人签名方式等。
场景示例
一份 BBC 合同:
- B 端签署人(自动签示例企业):签署控件位置固定,发起时预设
SignComponents且签署人是企业自动签类型,发起后该签署人自动签署。 - B 端签署人(典子谦示例企业):签署控件位置固定,发起时不传
SignComponents,签署时由签署方自己拖拽添加印章控件,限制普通印章只能合同专用章,骑缝章只能使用人事章。 - C 端签署人(何规):签署位置灵活,发起时不传
SignComponents,签署时由签署方自己拖拽添加签名控件,限制能使用的个人签名方式为手写签名、OCR签名、系统签名。
调用创建签署流程接口时,将 SignBeanTag 设置为 1,并对3个签署方分别设置如下参数:
{
"Action": "ChannelCreateFlowByFiles",
"Agent": {
"ProxyOperator": {
"OpenId": "n9527"
},
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDwhxUUckp3gl8j5UuFX33LSNozpRsbi"
},
"FlowName": "签署时拖拽控件实例合同",
"Unordered": true,
"SignBeanTag": 1,
"FlowApprovers": [
{
"ApproverType": "ENTERPRISESERVER",
"OrganizationName": "自动签示例企业",
"OrganizationOpenId": "org_dianziqian",
"OpenId": "n9527",
"SignComponents": [
{
"ComponentPosY": 260,
"ComponentWidth": 100,
"FileIndex": 0,
"ComponentType": "SIGN_SEAL",
"ComponentPage": 2,
"ComponentPosX": 160,
"ComponentHeight": 100,
"ComponentValue": ""
}
]
},
{
"ApproverType": "ORGANIZATION",
"OrganizationOpenId": "dianziqian_example_org",
"OpenId": "dianziqian",
"OrganizationName": "典子谦示例企业",
"AddSignComponentsLimits": [
{
"ComponentType": "SIGN_SEAL",
"ComponentValue": [
"CONTRACT"
]
},
{
"ComponentType": "SIGN_PAGING_SEAL",
"ComponentValue": [
"PERSONNEL"
]
}
]
},
{
"ApproverType": "PERSON",
"Name": "张某",
"Mobile": "18700000000",
"AddSignComponentsLimits": [
{
"ComponentType": "SIGN_SIGNATURE",
"ComponentValue": [
"HANDWRITE",
"OCR_ESIGN",
"SYSTEM_ESIGN"
]
}
]
}
],
"FileIds": [
"yDSxIUUckpt4uggaUyhmOs66zu47qecJ"
]
}