1.本发明属于报文转换显示处理技术领域,具体涉及一种电子合同预览的方法。
背景技术:2.电子合同,又称电子商务合同,根据联合国国际贸易法委员会《电子商务示范法》以及世界各国颁布的电子交易法,同时结合我国《合同法》的有关规定,电子合同可以界定为:电子合同是双方或多方当事人之间通过电子信息网络以电子的形式达成的设立、变更、终止财产性民事权利义务关系的协议。通过上述定义可以看出电子合同是以电子的方式订立的合同,其主要是指在网络条件下当事人为了实现一定的目的,通过数据电文、电子邮件等形式签订的明确双方权利义务关系的一种电子协议。
3.传统的实现步骤中,第一步:由法务提供word版本合同。第二步:依据段落进行手动复制成为html。第三步:然后根据段落中文字格式进行手动调整。第四步:并根据业务要求,预留反写字段,后制作出可预览的html页面。该实现的方案的优点为兼容性好、且可定制化的开发。但是缺点有以下几点,制作时间成本较高、开发模式决定合同内容存在出错概率,且预览合同展示格式和实际签署合同格式存在差异。
技术实现要素:4.针对现有技术中制作时间成本高、内容存在出错概率、预览合同展示格式与实际签署合同格式存在差异的问题,本发明提供一种电子合同预览的方法,其目的在于:保证预览和签署的合同完全一致、提高前段的兼容性,并易于管理。
5.本发明采用的技术方案如下:
6.一种电子合同预览的方法,其特征在于,包括以下步骤:
7.步骤a:提供word版本合同;
8.步骤b:在word版本合同中预留反写字段;
9.步骤c:根据传入数据,填写word版本合同;
10.步骤d:将word版本合同转换为图片数据;
11.步骤e:将图片数据嵌入html上,并返回前端进行展示。
12.采用上述方案,其中签署与预览使用的为同一份word合同,相较于传统技术中的一句段落进行手动复制成html文件并进行后续处理和预览,保证了其文件的易于管理,其中所展示的文件为图片嵌入的html,通过该种技术,提高了预览对于前端的兼容性。
13.优选的,所述步骤c的具体步骤为:
14.步骤c1:从各个业务系统中获取需要反写的业务数据,并将业务数据转换为map格式的数据流;
15.步骤c2:将储存在本地的word合同模板数据提取出来,转换为数据流文件
16.步骤c3:将步骤c2中的数据流文件转换为base64编码的文件输入流;
17.步骤c4:创建开源的xwptemplate处理类,将map格式的数据流与base64编码的文
件输入流传入xwptemplate处理类进行处理;
18.步骤c5:处理完成后,通过xwptemplate处理类将流输出到标准文件流中;
19.步骤c6:关闭xwptemplate处理类。
20.优选的,所述步骤d的具体步骤为:
21.步骤d11:将上层处理得到的输出文件流转换为byte字节格式;
22.步骤d12:将byte字节格式流转为字节输入流
23.步骤d13:根据步骤d12中的字节输入流,创建集成与poixmlpocument的xwptemplate对象;
24.步骤d14:设置word文件流处理类docpdfconverter的格式信息;
25.步骤d15:使用docpdfconverter处理类,逐行读取word字节输入流,转换为pdf文件输出流。
26.优选的,所述步骤d2具体包括以下步骤:
27.步骤d21:通过pddocument读取pdf输出流文件,且初始化pdfrenderer处理器;
28.步骤d22:通过pddocument处理类获取pdf输出流文件的页数
29.步骤d23:根据需要设置每页图片的压缩比率;
30.步骤d24:通过pdfrenderer按照比率压缩pdf数据;
31.步骤d25:实用image10将pdf文件流转换为标准文件输出流;
32.步骤d26:对文件输出流转换为标准base64编码;
33.步骤d27:将步骤e6中的标准base64编码进行组装,得到标准的base64图片信息列表。
34.优选的,所述步骤e的具体步骤包括:
35.步骤e1:循环步骤d27中得到的base64图片信息列表;
36.步骤e2:按照html页面的格式,对每一张base图片,在开头和结尾处加上html格式的格式信息;
37.步骤e3:形成前端可预览的html文件列表。
38.采用上述方案,保证了预览与签署使用的技术相同,其技术效果为签署人员所签署的合同与预览的合同完全一致,解决了传统技术中出错概率的技术缺陷。
39.综上所述,由于采用了上述技术方案,本发明的有益效果是:
40.1.其中签署与预览使用的为同一份word合同,相较于传统技术中的一句段落进行手动复制成html文件并进行后续处理和预览,保证了其文件的易于管理,其中所展示的文件为图片嵌入的html,通过该种技术,提高了预览对于前端的兼容性。
41.2.保证了预览与签署使用的技术相同,其技术效果为签署人员所签署的合同与预览的合同完全一致,解决了传统技术中出错概率的技术缺陷。
附图说明
42.本发明将通过例子并参照附图的方式说明,其中:
43.图1是本发明的一种实施方式的流程图;
具体实施方式
44.本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
45.下面结合图1对本发明作详细说明。
46.实施例一:
47.一种电子合同预览的方法,包括以下步骤:
48.步骤a:提供word版本合同;
49.步骤b:在word版本合同中预留反写字段;
50.步骤c:根据传入数据,填写word版本合同;
51.步骤d:将word版本合同转换为图片数据;
52.步骤e:将图片数据嵌入html上,并返回前端进行展示。
53.所述步骤c的具体步骤为:
54.步骤c1:从各个业务系统中获取需要反写的业务数据,并将业务数据转换为map格式的数据流;
55.步骤c2:将储存在本地的word合同模板数据提取出来,转换为数据流文件
56.步骤c3:将步骤c2中的数据流文件转换为base64编码的文件输入流;
57.步骤c4:创建开源的xwptemplate处理类,将map格式的数据流与base64编码的文件输入流传入xwptemplate处理类进行处理;
58.步骤c5:处理完成后,通过xwptemplate处理类将流输出到标准文件流中;
59.步骤c6:关闭xwptemplate处理类。
60.所述步骤d的具体步骤为:
61.步骤d1:通过xdocreport技术,将word版本合同转换为pdf的数据流文件;
62.步骤d2:将步骤d1中得到的pdf的数据流文件通过freemarker技术转换为图片数据。
63.所述步骤d1的具体步骤为:
64.步骤d11:将上层处理得到的输出文件流转换为byte字节格式;
65.步骤d12:将byte字节格式流转为字节输入流
66.步骤d13:根据步骤d12中的字节输入流,创建集成与poixmlpocument的xwptemplate对象;
67.步骤d14:设置word文件流处理类docpdfconverter的字体、格式等信息;
68.步骤d15:使用docpdfconverter处理类,逐行读取word字节输入流,转换为pdf文件输出流。
69.所述步骤d2具体包括以下步骤:
70.步骤d21:通过pddocument读取pdf输出流文件,且初始化pdfrenderer处理器;
71.步骤d22:通过pddocument处理类获取pdf输出流文件的页数
72.步骤d23:根据需要设置每页图片的压缩比率;
73.步骤d24:通过pdfrenderer按照比率压缩pdf数据;
74.步骤d25:实用image10将pdf文件流转换为标准文件输出流;
75.步骤d26:对文件输出流转换为标准base64编码;
76.步骤d27:将步骤e6中的标准base64编码进行组装,得到标准的base64图片信息列表。
77.所述步骤e的具体步骤包括:
78.步骤e1:循环步骤d27中得到的base64图片信息列表;
79.步骤e2:按照html页面的格式,对每一张base图片,在开头和结尾处加上html格式的格式信息;
80.步骤e3:形成前端可预览的html文件列表。
81.在上述实施例中,其中步骤a的word版本合同由法务提供,其中所有合同需求的来源,由法务提供法审之后的合同样本,在一般线上的合同文本,并不会直接预览合同文本,而是需要预览实际个人身份数据与业务数据的合同信息,因此,需要在word合同上面预留反写信息,如步骤b中所示,以便用户的个人信息和合作业务信息能够反写上去。
82.在预留反写字段后,通过poi
‑
tl技术,将用户的个人信息与业务数据反写倒word版本合同上,得到反写数据的word合同版本;
83.在完成反写流程后,通过开源xdocreport技术,将word版本的合同转换为pdf的数据流文件,其中xdocreport的语法可为velocity或freemarker的其中一个,将word版本的合同转换为pdf的数据流文件后,通过freemarker技术将pdf的数据流文件转换为数张图片数据,并将图片数据嵌入倒html的页面中,返回给前端进行展示。
84.采用上述方案,其具有以下两个技术优势,其一:不需要针对每一个合同进行代码开发,节约了人力;其二:在满足兼容属性的情况下实现了所见即所签署,客户实际看到的合同页面,即最终签订的pdf合同。
85.以上所述实施例仅表达了本技术的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术技术方案构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。