发起方式说明

[!NOTE]
签约合同时,签约方需要在指定的位置上签署合同,本文提供了几种常用方案,帮助客户指定签署方的签章位置。

签字位置-坐标指定

[!NOTE]
设定签约方的chapteJson来指定签字位置,其chateJSON是一个JSONArray数组,其结构如下

1、使用签字坐标位置(X Y)需要设置参数positionType=0;且合同发起接口传入签署方信息(signatories)中,需要设置参数chapteJson;

2、注意数组中不能有相同的page页,即不能有相同的第n页。如果有相同的页的不同位置,建议合到一个JSONObject中指定不同的chates;

3、page是从0开始,即page=0表示文件的第一页;

参数说明

[{
    "chaptes":[//此为数组, 可以为多个, 即一页可以有多个签字位置
    {
        "offsetX":0.33,#坐标x百分比,0时为最左边
        "offsetY":0.54, #坐标y百分比,0时为最上边
        "cheight":70 #章高度设置,可不填写
    }
    ],
    "page":0 //pdf所在页,从0开始, 可以为负值:-1为最后一页,依此类推
    },
    {
        "chaptes":[
        {
            "offsetX":0.33,
            "offsetY":0.54
        }
    ],
        "page":1
    }
]

代码实现

JAVA实现
//签约人信息
SignatoryReq sReq=new SignatoryReq();
sReq.setChapteJson("[{\"page\":0,\"chaptes\":[{\"offsetX\":0.12,\"offsetY\":0.23}]},{\"page\":1,\"chaptes\":[{\"offsetX\":0.45,\"offsetY\":0.67}]}]");
PHP实现
$sReq=new SignatoryReq();
$sReq->chapteJson="[{\"page\":0,\"chaptes\":[{\"offsetX\":0.12,\"offsetY\":0.23}]},{\"page\":1,\"chaptes\":[{\"offsetX\":0.45,\"offsetY\":0.67}]}]";

签字位置-表单域指定

[!NOTE]
用于使用html上传或模版上传使用html标签(当然pdf的文件直接上传也是可以的,不过必须上传的是有表单域的pdf)

1、需要设置参数positionType=1,且合同发起接口传入签署方信息(signatories)中,需要设置参数chapteName;

2、如果合同发起上传为pdf时,需pdf自行定义好表单域,

3、如果合同发起上传为html或tmpl时需定义好input标签

html或tmpl中定义input标签说明:

<input type="text" name="ebq" style="width:0;height:0;border:0;margin:0;padding:0;position: relative;">
#使用input标签,此标签不能使用type='hidden'或css的display:none,会造成表单域生成无效。推存以上方式。
#可以使用css的fixed相对定位,和修改left和right
#input标签中的name属性可以自定义

代码实现

JAVA实现
ApplySignReq applySignReq=new ApplySignReq();
applySignReq.setPositionType(1);
applySignReq.setHtmlContent("<meta charset=\"utf-8\">html文件信息001<br/><br/><input type=\"text\" name=\"ebq\" style=\"width:0;height:0;border:0;margin:0;padding:0;position: relative;\">");
......
//签约人信息
SignatoryReq sReq=new SignatoryReq();
sReq.setChapteName("ebq");
PHP实现
$request=new ApplySignReq();
$request->positionType=1;
$request->htmlContent = "<meta charset=\"utf-8\">html文件信息001<br/><input type=\"text\" name=\"ebq\" style=\"width:0;height:0;border:0;margin:0;padding:0;position: relative;\">";
......
$sReq=new SignatoryReq();
$sReq->chapteName="ebq";//使用表单域定位

签字位置-关键字搜索

[!NOTE]
使用关键字搜索方式查找合同的签约位置

1、需要设置参数positionType=2,且合同发起接口传入签署方信息(signatories)中,需要设置参数searchKey;

2、关键字(searchKey)支持多个,以英文;(分号)分隔;

3、可以根据查询出来的关键字,指定在第几页(page)、第几个(keyNumber)关键字处盖章;

4、可以根据关键字颜色(fillColor)进行盖章;

关键字扩展说明

#searchKey 关键字支持多个;以英文;分隔
#searchExtend 关键字查询的扩展信息,json的字符串,当page和keyNumber同时存在,先进行page过滤再进行keyNumber过滤
{
    "page":0, # 关键字查找的指定页,0开始:可以为数值/数值数组,数值可为负数;例-1表示最后一页
    "keyNumber":0, # 关键字查找的坐标位置,0开始:可以为数值/数值数组,数值可为负数;例-1表示倒数第一个坐标
    "fillColor": { #如要对查询关键字颜色、 透明度过滤可以使用
    "red":0, #红,0-255
    "green":0,#蓝,0-255
    "blue":0, #黄,0-255
    "alpha":255 #透明度 ,0不可见,最大255
    }
}
#searchConvertExtend 为按关键字查找到的签字位置做偏移使用的参数,json的字符串
{
    "fixX":-20, #向左偏移20像素
    "fixY":-20 #向下偏移20像素
}

代码实现

JAVA实现
ApplySignReq applySignReq=new ApplySignReq();
applySignReq.setPositionType(2);
......
//签约人信息
SignatoryReq sReq=new SignatoryReq();
sReq.setSearchKey("wz");
PHP实现
$request=new ApplySignReq();
$request->positionType=2;
......
$sReq=new SignatoryReq();
$sReq->searchKey="wz";

results matching ""

    No results matching ""