适于在线协议的PDF文档生成方法和系统技术方案

技术编号:22219257 阅读:25 留言:0更新日期:2019-09-30 01:24
本发明专利技术公开了一种适于在线协议的PDF文档生成方法,根据调用的PDF表单模板所包含的模板组件的数据流类型将协议数据拆分成第一数据和第二数据,对第一数据进行处理以生成具有固定模板的第一PDF文档,对第二数据进行处理以生成不具备固定模板的第二PDF文档,最后按照预设的合并规则合并第一PDF文档和第二PDF文档,生成在线协议的PDF文档。本发明专利技术能够快速自动处理各种类型的在线协议,便于统一维护,拓展方便;另外,当同时接收到多个PDF文档生成请求时,采用任务管理模块对接收到的PDF文档生成请求进行解析,生成多个同步/异步子任务,在确保任务顺利完成的前提下尽可能地提高处理速度;同时,采用多线程并行处理每个子任务列表,加快处理速度。

PDF Document Generation Method and System Suitable for Online Protocol

【技术实现步骤摘要】
适于在线协议的PDF文档生成方法和系统
本专利技术涉及计算机
,具体而言涉及一种适于在线协议的PDF文档生成方法和系统。
技术介绍
使用openoffice的方式转换文件格式为PDF的时候,内容格式可以很自由的排版,但是效率低下且消耗的CPU资源很高,在高数据量的情况下容易出现OPENOFFICE的进程卡死。使用编辑PDF表单域的方式来进行PDF文档的生成,效率生提升了很多倍。但是内次生成的PDF文件内容都是固定的,表单中的内容都是固定格式的,相对来说比较死板。目前的在线协议,如消费金融领域的合同协议等,有可能只包含用户签订的合同和协议,这部分数据具有固定的合同模板,也有可能包含不具备固定模板的部分数据,如用户的借款流水之类的动态数据,针对后者,则很难创建固定的模板,导致工作人员需要对包含有动态数据的协议另行处理,工作量大,并且在处理过程中容易出错。
技术实现思路
本专利技术目的在于提供一种适于在线协议的PDF文档生成方法和系统,能够快速自动处理各种类型的在线协议,便于统一维护,拓展方便;另外,当同时接收到多个PDF文档生成请求时,采用任务管理模块对接收到的PDF文档生成请求进行解析,生成多个同步/异步子任务,在确保任务顺利完成的前提下尽可能地提高处理速度;同时,采用多线程并行处理每个子任务列表,加快处理速度。为达成上述目的,结合图1,本专利技术提出一种适于在线协议的PDF文档生成方法,所述方法包括:S1:接收PDF文档生成请求,PDF文档生成请求中包括PDF表单模板编号和协议数据。S2:调用对应编号的PDF表单模板,PDF表单模板中包含有若干个模板组件,获取所述PDF表单模板中的模板组件的数据流类型,根据数据流类型将协议数据拆分成第一数据和第二数据,其中,第一数据符合所述PDF表单模板所规定的数据流类型,第二数据不符合所述PDF表单模板所规定的数据流类型。S3:解析第一数据,得到与各个模板组件对应的信息数据,将得到的信息数据填充到对应的各个模板组件中生成第一PDF文档。S4:将第二数据作为源数据,结合空白模板直接生成第二FDF文档。S5:按照预设的合并规则合并第一PDF文档和第二PDF文档,生成最终PDF文档。进一步的实施例中,所述方法还包括:步骤S3中,如果填充后的第一PDF文档存在缺失项,根据缺失项类型以生成对应等级的警报信号或忽略该缺失项。进一步的实施例中,所述方法还包括:将协议数据同时包括第一数据和第二数据的PDF文档生成请求定义成复合PDF文档生成请求,将其他PDF文档生成请求被定义成单一PDF文档生成请求。如果同时接收到多个PDF文档生成请求,其中部分或者全部PDF文档生成请求均为复合PDF文档生成请求,将每个复合PDF文档生成请求拆分成处理第一数据的第一子任务和处理第二数据的第二子任务,根据每个复合PDF生成文档请求的实时性要求,给对应的第一子任务和第二子任务配置同步或异步关系;根据协议数据类型将其余单一PDF文档生成请求转换成对应的第一子任务或第二子任务;每个子任务均配置有唯一的任务ID。创建两个子任务列表:第一子任务列表和第二子任务列表,将前述每个子任务按照生成时间由先到后的顺序依次导入对应的子任务列表,其中:如果第一子任务列表处理的当前第一子任务存在与之具有同步关系的第二子任务,根据任务ID从第二子任务列表中调取对应的第二子任务,将之提取至队列前端以优先处理。进一步的实施例中,所述任务ID中包含有用以标识所属PDF文档生成请求类别的第一标识、用以标识是否具有同步/异步关系子任务的第二标识、用以标识两个子任务之间唯一对应关系的第三标识。进一步的实施例中,所述方法还包括:采用多线程的方式并行处理子任务列表中的子任务。进一步的实施例中,所述方法还包括:调用openoffice模块以将第二数据作为源数据,结合空白模板直接生成第二FDF文档。基于前述方法,本专利技术还提及一种适于在线协议的PDF文档生成系统,所述系统包括请求接收模块、请求解析模块、PDF表单模板数据库、第一PDF生成模块、第二PDF生成模块、协议管理后台、PDF合并模块。所述PDF表单模板数据库用于存储PDF表单模板,每个PDF表单模板均具有独立的编号。所述请求接收模块用于接收PDF文档生成请求。所述请求解析模块用于对PDF文档生成请求进行解析,获取其中包含的PDF表单模板编号和协议数据,结合对应编号的PDF表单模板,将协议数据拆分成第一数据和第二数据,其中,第一数据符合所述PDF表单模板所规定的数据流类型,第二数据不符合所述PDF表单模板所规定的数据流类型所述。所述第一PDF生成模块用于解析第一数据,得到与各个模板组件对应的信息数据,将得到的信息数据填充到所述PDF表单模板对应的各个模板组件中以生成第一PDF文档。所述第二PDF生成模块用于将第二数据作为源数据,结合空白模板直接生成第二FDF文档。所述PDF合并模块用于按照预设的合并规则合并第一PDF文档和第二PDF文档,生成最终PDF文档。所述协议管理后台用于配置第一PDF生成模块、第二PDF生成模块、PDF表单模板数据库、合并规则。进一步的实施例中,所述系统还包括任务管理模块。所述任务管理模块响应于同时接收到多个PDF文档生成请求,将每个复合PDF文档生成请求拆分成处理第一数据的第一子任务和处理第二数据的第二子任务,根据每个复合PDF生成文档请求的实时性要求,给对应的第一子任务和第二子任务配置同步或异步关系,根据协议数据类型将其余单一PDF文档生成请求转换成对应的第一子任务或第二子任务,以及为每个子任务均配置唯一的任务ID。其中,复合PDF文档生成请求所包含的协议数据同时包括第一数据和第二数据,单一PDF文档生成请求所包含的协议数据只包括第一数据或第二数据。本专利技术提出,根据调用的PDF表单模板所包含的模板组件的数据流类型将协议数据拆分成第一数据和第二数据,采用如编辑PDF表单域的方式对第一数据进行处理以生成具有固定模板的第一PDF文档,采用如openoffice的方式对第二数据进行处理以生成不具备固定模板的第二PDF文档,最后按照预设的合并规则合并第一PDF文档和第二PDF文档,生成在线协议的PDF文档。以上本专利技术的技术方案,与现有相比,其显著的有益效果在于:(1)本专利技术能够快速自动处理各种类型的在线协议,便于统一维护,拓展方便.(2)另外,当同时接收到多个PDF文档生成请求时,采用任务管理模块对接收到的PDF文档生成请求进行解析,生成多个同步/异步子任务,在确保任务顺利完成的前提下尽可能地提高处理速度.(3)同时,采用多线程并行处理每个子任务列表,加快处理速度。应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的专利技术主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的专利技术主题的一部分。结合附图从下面的描述中可以更加全面地理解本专利技术教导的前述和其他方面、实施例和特征。本专利技术的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本专利技术教导的具体实施方式的实践中得知。附图说明附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示本文档来自技高网...

【技术保护点】
1.一种适于在线协议的PDF文档生成方法,其特征在于,所述方法包括:S1:接收PDF文档生成请求,PDF文档生成请求中包括PDF表单模板编号和协议数据;S2:调用对应编号的PDF表单模板,PDF表单模板中包含有若干个模板组件,获取所述PDF表单模板中的模板组件的数据流类型,根据数据流类型将协议数据拆分成第一数据和第二数据,其中,第一数据符合所述PDF表单模板所规定的数据流类型,第二数据不符合所述PDF表单模板所规定的数据流类型;S3:解析第一数据,得到与各个模板组件对应的信息数据,将得到的信息数据填充到对应的各个模板组件中生成第一PDF文档;S4:将第二数据作为源数据,结合空白模板直接生成第二FDF文档;S5:按照预设的合并规则合并第一PDF文档和第二PDF文档,生成最终PDF文档。

【技术特征摘要】
1.一种适于在线协议的PDF文档生成方法,其特征在于,所述方法包括:S1:接收PDF文档生成请求,PDF文档生成请求中包括PDF表单模板编号和协议数据;S2:调用对应编号的PDF表单模板,PDF表单模板中包含有若干个模板组件,获取所述PDF表单模板中的模板组件的数据流类型,根据数据流类型将协议数据拆分成第一数据和第二数据,其中,第一数据符合所述PDF表单模板所规定的数据流类型,第二数据不符合所述PDF表单模板所规定的数据流类型;S3:解析第一数据,得到与各个模板组件对应的信息数据,将得到的信息数据填充到对应的各个模板组件中生成第一PDF文档;S4:将第二数据作为源数据,结合空白模板直接生成第二FDF文档;S5:按照预设的合并规则合并第一PDF文档和第二PDF文档,生成最终PDF文档。2.根据权利要求1所述的适于在线协议的PDF文档生成方法,其特征在于,所述方法还包括:步骤S3中,如果填充后的第一PDF文档存在缺失项,根据缺失项类型以生成对应等级的警报信号或忽略该缺失项。3.根据权利要求1所述的适于在线协议的PDF文档生成方法,其特征在于,所述方法还包括:将协议数据同时包括第一数据和第二数据的PDF文档生成请求定义成复合PDF文档生成请求,将其他PDF文档生成请求被定义成单一PDF文档生成请求;如果同时接收到多个PDF文档生成请求,其中部分或者全部PDF文档生成请求均为复合PDF文档生成请求,将每个复合PDF文档生成请求拆分成处理第一数据的第一子任务和处理第二数据的第二子任务,根据每个复合PDF生成文档请求的实时性要求,给对应的第一子任务和第二子任务配置同步或异步关系;根据协议数据类型将其余单一PDF文档生成请求转换成对应的第一子任务或第二子任务;每个子任务均配置有唯一的任务ID;创建两个子任务列表:第一子任务列表和第二子任务列表,将前述每个子任务按照生成时间由先到后的顺序依次导入对应的子任务列表,其中:如果第一子任务列表处理的当前第一子任务存在与之具有同步关系的第二子任务,根据任务ID从第二子任务列表中调取对应的第二子任务,将之提取至队列前端以优先处理。4.根据权利要求3所述的适于在线协议的PDF文档生成方法,其特征在于,所述任务ID中包含有用以标识所属PDF文档生成请求类别的第一标识、用以标识是否具有同步/异步关系子任务的第二...

【专利技术属性】
技术研发人员:冯铭钟加仁
申请(专利权)人:苏宁消费金融有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1