首页> 中国专利> 文档修改差异展示方法及装置

文档修改差异展示方法及装置

摘要

本发明公开了一种文档修改差异展示方法及装置,可用于金融领域或其他技术领域,该方法包括:获取对原始文档数据进行修改得到的修改后的文档数据;通过将所述修改后的文档数据中的每个文档部分作为一个流程节点,生成所述修改后的文档数据对应的流程实例化文档;将所述原始文档数据对应的流程实例化文档中的每个流程节点的当前状态从已发起设置为已停止,并将所述修改后的文档数据对应的流程实例化文档中的每个流程节点的当前状态设置为已发起;确定所述修改后的文档数据与所述原始文档数据之间的文档差异内容数据;在所述修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据。本发明有助于提高多人共享编辑的准确性。

著录项

  • 公开/公告号CN112784530A

    专利类型发明专利

  • 公开/公告日2021-05-11

    原文格式PDF

  • 申请/专利权人 中国工商银行股份有限公司;

    申请/专利号CN202110180755.4

  • 发明设计人 孙庆波;张泳;赵培桐;吴利华;

    申请日2021-02-08

  • 分类号G06F40/106(20200101);G06F40/166(20200101);

  • 代理机构11127 北京三友知识产权代理有限公司;

  • 代理人任默闻;孙乳笋

  • 地址 100140 北京市西城区复兴门内大街55号

  • 入库时间 2023-06-19 10:57:17

说明书

技术领域

本发明涉及文档多人协同编辑技术领域,具体而言,涉及一种文档修改差异展示方法及装置。

背景技术

随着现代计算机技术的发展,项目的开发也逐步转向敏捷模式,多人多团队协同工作模式越来越常见,例如在线文档多人协同编辑。目前的在线文档多人协同编辑用户难以直观的看到上一次对文档进行编辑的内容,通常需要查阅历史数据并进行对比去核对判断上一次对文档进行编辑的内容,费时费力。现有技术缺少一种能够高效的展示文档修改差异的方法。

发明内容

本发明为了解决上述背景技术中的技术问题,提出了一种文档修改差异展示方法及装置。

为了实现上述目的,根据本发明的一个方面,提供了一种文档修改差异展示方法,该方法包括:

获取对原始文档数据进行修改得到的修改后的文档数据;

通过将所述修改后的文档数据中的每个文档部分作为一个流程节点,生成所述修改后的文档数据对应的流程实例化文档;

将所述原始文档数据对应的流程实例化文档中的每个流程节点的当前状态从已发起设置为已停止,并将所述修改后的文档数据对应的流程实例化文档中的每个流程节点的当前状态设置为已发起;

确定所述修改后的文档数据与所述原始文档数据之间的文档差异内容数据;

在所述修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据。

可选的,所述通过将所述修改后的文档数据中的每个文档部分作为一个流程节点,生成所述修改后的文档数据对应的流程实例化文档,具体包括:

获取所述修改后的文档数据中的每个文档部分;

将每个所述文档部分作为一个流程节点,生成所述修改后的文档数据对应的工作流,其中,流程节点存储对应的文档部分的数据内容;

将所述工作流实例化为文档,得到所述修改后的文档数据对应的流程实例化文档。

可选的,所述原始文档数据对应的流程实例化文档为通过将所述原始文档数据中的每个文档部分作为一个流程节点生成所述原始文档数据对应的工作流,进而将所述原始文档数据对应的工作流实例化为文档得到的。

可选的,所述文档部分为章,所述文档差异内容数据包含:差异章节以及所述差异章节对应的差异内容。

可选的,该文档修改差异展示方法,还包括:

获取所述修改后的文档数据对应的文档修改时间以及文档修改用户;

在所述修改后的文档数据对应的流程实例化文档中标识出所述文档修改时间以及所述文档修改用户。

可选的,所述原始文档数据和所述修改后的文档数据均包含多个文档部分;所述原始文档数据和所述修改后的文档数据均按每个文档部分的数据形式进行存储。

可选的,所述文档部分为:章、页以及段中的一种。

为了实现上述目的,根据本发明的另一方面,提供了一种文档修改差异展示装置,该装置包括:

Web数据监听模块,用于获取对原始文档数据进行修改得到的修改后的文档数据;

文档树结构存储模块,用于通过将所述修改后的文档数据中的每个文档部分作为一个流程节点,生成所述修改后的文档数据对应的流程实例化文档;以及用于将所述原始文档数据对应的流程实例化文档中的每个流程节点的当前状态从已发起设置为已停止,并将所述修改后的文档数据对应的流程实例化文档中的每个流程节点的当前状态设置为已发起;

数据同步差异比较模块,用于确定所述修改后的文档数据与所述原始文档数据之间的文档差异内容数据;

差异显示模块,用于在所述修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据。

为了实现上述目的,根据本发明的另一方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述文档修改差异展示方法中的步骤。

为了实现上述目的,根据本发明的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述文档修改差异展示方法中的步骤。

本发明的有益效果为:本发明在用户对文档进行修改后,生成修改后的文档数据对应的流程实例化文档,并将原始文档数据对应的流程实例化文档中的每个流程节点从已发起设置为已停止,以及将所述修改后的文档数据对应的流程实例化文档中的每个流程节点设置为已发起,并在修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据,解决了用户难以直观的看到上一次对文档进行编辑的内容的技术问题,有助于提高多人共享编辑的准确性以及高效性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1是本发明实施例文档修改差异展示方法的第一流程图;

图2是本发明实施例生成流程实例化文档的流程图;

图3是本发明实施例文档修改差异展示方法的第二流程图;

图4是本发明实施例文档修改差异展示装置的结构框图;

图5是本发明实施例文档修改差异展示装置运行示意图;

图6是本发明实施例计算机设备示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

需要说明的是,本发明的文档修改差异展示方法及装置可用于金融领域,也可以用于其他技术领域。

图1是本发明实施例文档修改差异展示方法的第一流程图,如图1所示,本实施例的文档修改差异展示方法包括步骤S101至步骤S105。

步骤S101,获取对原始文档数据进行修改得到的修改后的文档数据。

在本发明一个实施例中,所述原始文档数据和所述修改后的文档数据均包含多个文档部分;所述原始文档数据和所述修改后的文档数据均按每个文档部分的数据形式进行存储。在本发明一个实施例中,所述文档部分可以为:章、页以及段中的一种,在以下实施例中文档部分多用章作为举例。

在本发明一个实施例中,所述原始文档数据和所述修改后的文档数据均以html格式并按每个文档部分的数据形式存储在数据库中。具体的,所述文档部分为章,所述原始文档数据和所述修改后的文档数据均以每一章的数据形式存储在数据库中。

在本发明一个实施例中,用户在前端对原始文档数据进行编辑修改,用户修改后的文档数据存储在预设的数据库中。在本发明一个实施例中,本发明设置了Web监听模块,用于对用户前端进行行为监听,如用户只是打开文档进行查看,无修改保存触发,则不进行操作;如用户打开文档并修改保存则触发Web监听模块记录本次文档修改时间、文档修改用户以及修改后的文档数据。

步骤S102,通过将所述修改后的文档数据中的每个文档部分作为一个流程节点,生成所述修改后的文档数据对应的流程实例化文档。

在本发明实施例中,本发明将所述修改后的文档数据中的每一章(每个文档部分)作为一个流程节点,每个流程节点储存对应章的数据内容,生成所述修改后的文档数据对应的工作流。在本发明一个可选实施例中,本发明可以基于Activiti流程框架创建工作流。在生成所述修改后的文档数据对应的工作流之后,可以将该工作流实例化为一个文档,在前端进行显示,具体的,可以将该工作流实例化一个以html的形式展示的树结构的文档。

步骤S103,将所述原始文档数据对应的流程实例化文档中的每个流程节点的当前状态从已发起设置为已停止,并将所述修改后的文档数据对应的流程实例化文档中的每个流程节点的当前状态设置为已发起。

在本发明一个实施例中,所述原始文档数据对应的流程实例化文档为通过将所述原始文档数据中的每个文档部分作为一个流程节点生成所述原始文档数据对应的工作流,进而将所述原始文档数据对应的工作流实例化为文档得到的。

在本发明中,由于前端总是对流程节点为已发起的流程实例化文档进行展示,为了实时展示最新的文档(即修改后的文档),需要在生成修改后的文档数据对应的流程实例化文档时,将原始文档数据对应的流程实例化文档中的每个流程节点从已发起设置为已停止,将修改后的文档数据对应的流程实例化文档中的每个流程节点设置为已发起。

图5展示了生成文档数据对应的流程实例化文档的示意图,图5中的流程实例化文档2为修改后的文档数据对应的流程实例化文档,流程实例化文档1为原始文档数据对应的流程实例化文档。用户对原始文档数据进行修改,得到的修改后的文档数据之后,生成流程实例化文档2,并将流程实例化文档2的每个流程节点设置为已发起,将流程实例化文档1中每个流程节点从已发起设置为已停止。

步骤S104,确定所述修改后的文档数据与所述原始文档数据之间的文档差异内容数据。

在本发明一个实施例中,所述原始文档数据和所述修改后的文档数据均以html格式并按每个文档部分的数据形式存储在数据库中,本发明可以对这两个html格式的文档数据进行数据校验,确定出文档差异内容数据,其中在进行数据校验时可以忽略掉空格。

在本发明一个实施例中,所述文档部分为章,所述文档差异内容数据包含:差异章节以及所述差异章节对应的差异内容。在本发明实施例中,差异章节可以为多个。

在本发明实施例中,本步骤在确定出文档差异内容数据之后,可以将文档差异内容数据以json格式传递给预设的差异显示模块,以使差异显示模块在前端展示该文档差异内容。

步骤S105,在所述修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据。

在本发明实施例中,由于前端总是对流程节点为已发起的流程实例化文档进行展示,差异显示模块在接收到文档差异内容数据之后,先确定出每个流程节点均为已发起的流程实例化文档,即修改后的文档数据对应的流程实例化文档,进而在修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据。在本发明可选实施例中,可以用添加颜色等方式标识出文档差异内容数据,便于用户直观的识别。

由此可见,本发明在用户对文档进行修改后,生成修改后的文档数据对应的流程实例化文档,并将原始文档数据对应的流程实例化文档中的每个流程节点从已发起设置为已停止,以及将所述修改后的文档数据对应的流程实例化文档中的每个流程节点设置为已发起,并在修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据,解决了用户难以直观的看到上一次对文档进行编辑的内容的技术问题,有助于提高多人共享编辑的准确性以及高效性。

图2是本发明实施例生成流程实例化文档的流程图,如图2所示,上述步骤S102的生成所述修改后的文档数据对应的流程实例化文档,具体包括步骤S201至步骤S203。

步骤S201,获取所述修改后的文档数据中的每个文档部分。

步骤S202,将每个所述文档部分作为一个流程节点,生成所述修改后的文档数据对应的工作流,其中,流程节点存储对应的文档部分的数据内容。

在本发明实施例中,本发明将所述修改后的文档数据中的每一章(每个文档部分)作为一个流程节点,每个流程节点储存对应章的数据内容,生成所述修改后的文档数据对应的工作流。在本发明一个可选实施例中,本发明可以基于Activiti流程框架创建工作流。

步骤S203,将所述工作流实例化为文档,得到所述修改后的文档数据对应的流程实例化文档。

在本发明实施例中,在生成所述修改后的文档数据对应的工作流之后,可以将该工作流实例化为一个文档,在前端进行显示,具体的,可以将该工作流实例化一个以html的形式展示的树结构的文档。

图3是本发明实施例文档修改差异展示方法的第二流程图,如图3所示,在一个实施例中,本发明的实施例文档修改差异展示方法还包括步骤S301和步骤S302。

步骤S301,获取所述修改后的文档数据对应的文档修改时间以及文档修改用户。

步骤S302,在所述修改后的文档数据对应的流程实例化文档中标识出所述文档修改时间以及所述文档修改用户。

在本发明一个可选实施例中,本步骤具体可以将所述文档修改时间以及所述文档修改用户标识在文档差异内容数据处。

由以上实施例可以看出,本发明解决了多人在线编辑文档时无法实时查看文档修改记录的问题,提供了一种多人在线文档协助时能实时查看在线文档差异记录的方法。本发明的具体优点如下:

1、多人在线编辑文档时可准确定位在线文档上次修改信息,无需查询历史记录;

2、在解决多人在线协同办公的同时,准确的差异展示提高了文档的完整性和质量,以及在研发过程中极大的提高了文档的质量产出和节约了研发成本。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

基于同一发明构思,本发明实施例还提供了一种文档修改差异展示装置,可以用于实现上述实施例所描述的文档修改差异展示方法,如下面的实施例所述。由于文档修改差异展示装置解决问题的原理与文档修改差异展示方法相似,因此文档修改差异展示装置的实施例可以参见文档修改差异展示方法的实施例,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图4是本发明实施例文档修改差异展示装置的结构框图,如图4所示,本发明实施例文档修改差异展示装置包括:

Web数据监听模块1,用于获取对原始文档数据进行修改得到的修改后的文档数据;

文档树结构存储模块2,用于通过将所述修改后的文档数据中的每个文档部分作为一个流程节点,生成所述修改后的文档数据对应的流程实例化文档;以及用于将所述原始文档数据对应的流程实例化文档中的每个流程节点的当前状态从已发起设置为已停止,并将所述修改后的文档数据对应的流程实例化文档中的每个流程节点的当前状态设置为已发起;

数据同步差异比较模块3,用于确定所述修改后的文档数据与所述原始文档数据之间的文档差异内容数据;

差异显示模块4,用于在所述修改后的文档数据对应的流程实例化文档中标识出所述文档差异内容数据。

在本发明一个实施例中,文档树结构存储模块2,具体包括:

文档部分获取单元,用于获取所述修改后的文档数据中的每个文档部分;

工作流生成单元,用于将每个所述文档部分作为一个流程节点,生成所述修改后的文档数据对应的工作流,其中,流程节点存储对应的文档部分的数据内容;

流程实例化文档生成单元,用于将所述工作流实例化为文档,得到所述修改后的文档数据对应的流程实例化文档。

在本发明一个实施例中,所示差异显示模块4,还用于获取所述修改后的文档数据对应的文档修改时间以及文档修改用户,并在所述修改后的文档数据对应的流程实例化文档中标识出所述文档修改时间以及所述文档修改用户。

图5是本发明实施例文档修改差异展示装置运行示意图,如图5所示,本发明实施例文档修改差异展示装置的运行具体包括以下步骤01至08。

01、前端通过B/S架构实现server服务端与web前端的交互功能,用户编辑完成保存后触发文档树结构存储模块对交互的数据进行数据解析,并转换成html格式并按每个章节的数据形式存储在数据库中。

02、发起Activiti流程后,Activiti根据文档树结构存储模块存储的每个章节作为每个单独节点,每个树结构的章节节点同步至Activiti中每个流程节点,同时初始化每个流程节点,存储对应的章节数据,并赋值每个流程节点为已发起且整个Activiti流程实例化一个以html的形式展示的树结构的文档名为“流程实例化文档1”。

03、Web监听模块对用户前端进行行为监听,如用户只是打开文档(即原始文档数据,流程实例化文档1对应的文档数据)进行查看,无修改保存触发,则不执行04及后续操作;如用户打开文档并修改保存则触发Web监听模块,Web记录本次文档修改时间、文档修改用户以及修改后的文档数据,并执行04。

04、Web监听模块通知文档树结构存储模块进行数据解析,对“原始文档数据”的文档修改时间、文档修改用户进行记录,并对修改后的文档数据按步骤01的存储树结构模式和“原始文档数据”分别单独存储。

05、再次发起流程后,根据04步骤单独存储的编辑模块同样按照树结构文档章节和02步骤的Activiti章节关联同样生成一个新的流程实例“流程实例化文档2”,并记录流程各流程节点状态为已发起同时置“流程实例化文档1”的流程节点状态为已停止。

06、数据同步差异比较模块对实例后的“流程实例化文档1”和“流程实例化文档2”过程中对应的步骤01存储的树结构文档内容和步骤04存储的树结构文档内容(即原始文档数据和修改后的文档数据)进行章节数据分析,通过转化的html数据进行数据校验,并忽略空格,如不存在差异,不执行07及后续操作;如存在一个或者一个以上的章节数据差异,并记录文档差异内容数据,“流程实例化文档1”和“流程实例化文档2”的流程节点状态,“流程实例化文档1”流程为已停止,“流程实例化文档2”流程状态为已发起;并读取步骤04编辑过程中差异章节的文档修改时间、文档修改用户,以及差异的前后html内容并执行07。

07、数据同步差异比较模块把文档差异内容数据以json格式传递给差异显示模块。

08、差异显示模块对传递的数据进行数据分析,匹配对应数据库中对应的“流程实例化文档1”和“流程实例化文档2”的状态,并从前端“流程实例化文档2”中以明显的颜色展示和“流程实例化文档1”比对的的差异章节和差异内容。

为了实现上述目的,根据本申请的另一方面,还提供了一种计算机设备。如图6所示,该计算机设备包括存储器、处理器、通信接口以及通信总线,在存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例的方法。

处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。

存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及单元,如本发明上述方法实施例中对应的程序单元。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及作品数据处理,即实现上述方法实施例中的方法。

存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

所述一个或者多个单元存储在所述存储器中,当被所述处理器执行时,执行上述实施例中的方法。

上述计算机设备具体细节可以对应参阅上述实施例中对应的相关描述和效果进行理解,此处不再赘述。

为了实现上述目的,根据本申请的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述文档修改差异展示方法中的步骤。本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号