跳到主要内容

签署时自行添加签署控件

使用场景

  • 特性: 文件发起合同时,通过设置 SignBeanTag = 1可以允许签署方在签署时自行拖拽签署控件后再进行签署。

  • 适用场景: 文件发起的合同中,某些签署方签署方签署位置固定(发起时预设 SignComponents),某些签署方签署位置待定(需签署人在签署时自行拖拽添加)。

  • 使用限制

    1. 仅在 通过文件创建签署流程CreateFlowByFiles接口生效,模板发起不支持该能力。
    2. 如果所有签署方都预设了 SignComponents,会自动把合同 SignBeanTag 降级为 0(等同于普通签署流程)。
    3. 若部分签署方在在发起时预设了 SignComponents ,则该签署方不支持在签署时拖拽签署控件
    4. 无预设 SignComponents 的签署方支持在签署时拖拽签署控件
    5. 无预设 SignComponents 的签署方不支持自动签
    6. 无预设 SignComponents 的签署方,可以通过参数ApproverInfo.AddSignComponentsLimits明确规定签署方能在签署时可拖拽的签署控件类型(骑缝章、普通章、法人章等)、具体的印章ID或印章类型、个人签名方式等。

AddSignComponentsLimits 参数说明

此参数为数组类型,可以设置多个限制条件,用来限制签署方在签署时可拖拽的签署控件类型、印章ID、印章类型、个人签名方式等。

名称类型必选描述
ComponentTypeString控件类型,支持以下类型:
  • SIGN_SEAL : 印章控件
  • SIGN_PAGING_SEAL : 骑缝章控件
  • SIGN_LEGAL_PERSON_SEAL : 企业法定代表人控件
  • SIGN_SIGNATURE : 用户签名控件
示例值:SIGN_PAGING_SEAL
ComponentValueArray of String签署控件类型的值(可选),用于限制签署时印章或者签名的选择范围
1. 当 ComponentType 是 SIGN_SEAL 或者 SIGN_PAGING_SEAL 时,可指定印章类型或具体企业印章Id。具体场景与规则说明如下:指定印章类型:可传入以下枚举值来限制印章类型
  • OFFICIAL : 企业公章
  • CONTRACT : 合同专用章
  • FINANCE : 财务专用章
  • PERSONNEL : 人事专用章
  • OTHER : 其他
指定具体印章Id:可通过传递 ComponentValue 来指定具体的企业印章ID(支持传入多个)限制条件
  • 可为本企业(即发起方)的签署人指定本企业具体印章ID。
  • 主企业发起或集团账号主代子发起的业务场景下,也支持指定子企业的具体印章ID。
  • 他方企业签署人不支持指定具体印章ID
注意: 若请求中同时指定了具体的印章ID和印章类型,将以印章ID为准,传入的印章类型参数会被自动忽略。
2. 当ComponentType 是 SIGN_SIGNATURE 时可传入以下类型(支持多个)
  • HANDWRITE : 需要实时手写的手写签名
  • HANDWRITTEN_ESIGN : 长效手写签名, 是使用保存到个人中心的印章列表的手写签名(并且包含HANDWRITE)
  • OCR_ESIGN : OCR印章(智慧手写签名)
  • ESIGN : 个人印章
  • SYSTEM_ESIGN : 系统印章
3. 当ComponentType 是 SIGN_LEGAL_PERSON_SEAL 时无需传递此参数。示例值:["PERSONNEL"]

场景示例

一份 BBBC 合同:

  • B 端签署人(自动签示例企业):签署控件位置固定,发起时预设 SignComponents且签署人是企业自动签类型,发起后该签署人自动签署
  • B 端签署人(典子谦示例企业):签署位置灵活,发起时不传 SignComponents,签署时由签署方自己拖拽添加印章控件,限制普通印章只能合同专用章,骑缝章只能使用人事章。
  • B 端签署人(自动签示例企业的子企业): 签署位置灵活,发起时不传 SignComponents,签署时由签署方自己拖拽添加印章控件,限制只能使用印章ID为 yD3JFUU3zj4paiUREktwDS7AlW3NWPoR 的印章
  • C 端签署人(何规):签署位置灵活,发起时不传 SignComponents,签署时由签署方自己拖拽添加签名控件,限制能使用的个人签名方式为手写签名、OCR签名、系统签名。

调用创建签署流程接口CreateFlowByFiles)时,将 SignBeanTag 设置为 1,并对4个签署方分别设置如下参数:

{
"Operator": {
"UserId": "yDRCLUUgygq7xun5UuO0zjEwg0vjoimj"
},
"Unordered": true,
"FlowName": "签署时拖拽控件实例合同",
"SignBeanTag": 1,
"Approvers": [
{
"ApproverType": 3,
"OrganizationName": "自动签示例企业",
"ApproverName": "自动签署人",
"ApproverMobile": "18200000000",
"SignComponents": [
{
"ComponentPosY": 260,
"ComponentWidth": 100,
"FileIndex": 0,
"ComponentType": "SIGN_SEAL",
"ComponentPage": 1,
"ComponentPosX": 160,
"ComponentHeight": 100,
"ComponentValue": "yawJCUUckpk0t9yyUuXF7wL8KMl4uXcX"
}
]
},
{
"ApproverType": 0,
"OrganizationName": "典子谦示例企业",
"ApproverName": "典子谦",
"ApproverMobile": "18300000000",
"AddSignComponentsLimits": [
{
"ComponentType": "SIGN_SEAL",
"ComponentValue": [
"CONTRACT"
]
},
{
"ComponentType": "SIGN_PAGING_SEAL",
"ComponentValue": [
"PERSONNEL"
]
}
]
},
{
"ApproverType": 0,
"OrganizationName": "自动签示例企业的子企业",
"ApproverName": "子企业签署人",
"ApproverMobile": "18900000000",
"AddSignComponentsLimits": [
{
"ComponentType": "SIGN_SEAL",
"ComponentValue": [
"yD3JFUU3zj4paiUREktwDS7AlW3NWPoR"
]
}
]
},
{
"ApproverType": 1,
"ApproverName": "何规",
"ApproverMobile": "18400000000",
"AddSignComponentsLimits": [
{
"ComponentType": "SIGN_SIGNATURE",
"ComponentValue": [
"HANDWRITE",
"OCR_ESIGN",
"SYSTEM_ESIGN"
]
}
]
}
],
"FileIds": [
"yDCAvUUckpy9f2p5Uu21jPSSzcHJnqRu"
]
}