0.SAP契约锁业务需求
文章目录
- 1.需求
- 2.契约锁实现方式
- 3.SAP解决方案思路
- 4.数据库表和业务功能
- 5.流程图
- 6.接口调试
- 7.SAP封装设计思路
- 8.总结
1.需求
SAP通过调用契约锁的API,实现在SAP中发送电子合同来进行线上签约.
2.契约锁实现方式
1.通过上传文件的方式发起电子签;
2.通过模版配置的方式发起电子签;
3.SAP解决方案思路
SAP采用第一种方式通过上传文件发起电子签.
因为目前的需求中在发起合同源文件的时候内容并不是固定的,因此需要每次都要上传源文件进行签署,并且需要把源文件储存在公司内部公共服务器的本地磁盘上和契约锁服务器上.
公司内部公共服务器的本地磁盘是源文件,没有签署的,而契约锁服务器上的源文件是用来进行签署的.
SAP首先是把smartforms转成OTF格式,OTF格式再转成XSTRING的数据类型,XSTRING数据类型再转换成PDF文件,然后通过契约锁接口上传,最后该文件上传接口成功后就会返回SAP一串签署文档ID,该签署文档具有唯一性,可作为主键使用.
然后,在发起电子签接口时就可以使用该签署文档ID进行文件签署;发起电子签时我们需要的是要明确发起主体和签约的供应商如何通过JSON参数,这里的参数如何赋值就会决定了你的供应商配置报表该如何实现,包括固定具体的签署位置.
在发起电子接口成功后,契约锁就会返回给SAP一个电子签流程ID,这个电子签流程ID后续我们可用做电子签的撤回,作废,下载催签的这些功能实现.
最后,就是SAP回调RFC开发和契约锁回调接口配置
4.数据库表和业务功能
数据库表:
契约锁电子签约 JSON字段映射表;
契约锁电子签约 接口header请求头参数配置表;
契约锁电子签约 签署日志表;
契约锁电子签约 发起主体与签约方配置日志表;
契约锁电子签约 发起与签约方配置表;
契约锁电子签约 发起方与签署位置 配置表;
契约锁电子签约 签署位置 关键字 配置表;
契约锁电子签约 用于回调接口-作废状态;
业务功能:
文件上传;发起电子签;撤回电子签;作废电子签;下载电子签;催签电子签;
业务功能配置:
供应商配置报表开发
5.流程图

简易概括:
1.SAP上传文件给契约锁,
2.契约锁返回凭证ID给SAP,
3.SAP通过凭证ID发起电子签该契约锁,
4.契约锁返回电子签流程ID给SAP,
5.SAP通过电子签流程ID实现:催签;撤回;作废;下载文件
6.接口调试
业务需求已经清楚了,接下来就是需要打通SAP和契约锁的接口:
1.postman调用契约锁接口
7.SAP封装设计思路

1.接口设计的方式以面向对象的方式设计,
2.通过封装类完成接口功能的实现,
3.然后再通过面向过程以SAP RFC实现参数的传输,
4.然后通过报表调用RFC实现功能,
5.契约锁通过SAP回调接口同步更新签约状态.
8.总结
实际的业务需求并不复杂,主要的是功能开发,在开发过程中会遇到各种问题,比如文件如何上传,如何加密,如何JSON转换,字段如何映射,如何在报表中实现等等…
实现上述功能的方式有很多种,具体要结合到你们公司的实际业务需求中去.
以上个人观点仅供参考,欢迎各位大佬评论区讨论.
持续更新中~~~
