package common


// 【签署节点】签署节点 【作用】 即组织签署方下可设置不同的签署节点进行签署，如个人签署、个人审批 【特殊说明】 个人签署节点可同时签署个人签名和单位印章（但都是以该节点签署人个人名义签署）
type CbAction struct {
	// <ext>core:true</ext> 【签署节点类型 】签署节点类型  【作用】 1、个人签署：节点签署人可使用个人签名和单位印章图片进行签署 2、个人审批：用印流程若设置了审批节点，业务系统若也有审批，可通过此参数，同步将电子签章系统中的审批节点同步审批完成 3、个人审查：用户需审阅查看确认文件，无需签署 【传参】 取值范围：PERSONAL（个人签署），AUDIT（个人审批） ，REVIEW（个人审查）  【特殊说明】 Docusign支持：个人签署、个人审查  Adobesign支持：个人签署、个人审批 
	Type_ string `json:"type"`
	// <ext>core:true</ext> 【签署节点名称】签署节点名称 【作用】 可自定义签署节点名称，不传值将使用节点类型作为节点名称。如组织签章节点，可自定义命名为公司盖章
	Name string `json:"name,omitempty"`
	// <ext>core:true</ext> 【签署节点编号】签署节点编号 【作用】 可传入业务系统自行定义的签署节点的唯一编号，方便后续通过此参数定位签署节点，一个签署方下每个签署节点的编号不允许重复
	ActionNo string `json:"actionNo,omitempty"`
	// <ext>core:true</ext> 【签署节点签署顺序】签署节点签署顺序 【传参】 1、如果想按顺序签署，可分别设置签署动作的serialNo为1,2,3; 2、目前暂不支持无序签署 【特殊说明】 1、用印流程的签署方为非预设，或预设但允许发起时添加/删除预设签署方，则此参数传入的签署顺序生效 2、用印流程为预设且不允许发起时添加/删除预设的签署方，则签署节点将按照用印流程中预设的顺序依次匹配，传入的签署顺序将无效，如节点类型与预设不一致将报错
	SerialNo *int64 `json:"serialNo,omitempty"`
	// <ext>core:true</ext> 【签署人】签署人 【作用】 指定签署节点的签署人，例如审批节点的审批人、签署节点的签署人 【传参】 1、邮箱和成员编号必传其一，均传入以邮箱为准。 2、若用户不存在时，则使用传入的参数创建用户。 【特殊说明】 若通过成员编号查询到用户未绑定邮箱，则会报错
	ActionOperators []CbActionOperator `json:"actionOperators,omitempty"`
	// <ext>core:true</ext> 【签署位置】签署位置
	Locations []CbSignatoryRect `json:"locations,omitempty"`
	// <ext>core:true</ext> 【消息提醒】消息提醒 【作用】 轮到当前签署节点签署时，该节点所有签署人是否发送消息通知（若签署人有手机号则发送短信通知，若有邮箱则发送邮件通知，若均有则均发送） 【传参】 1、取值范围：true（发送），false（不发送）；不传值默认为：true（发送）。 2、当用印流程配置不发送消息提醒时，该参数无效，将不会发送消息提醒。
	Remind *bool `json:"remind,omitempty"`
}
