CN116974814A - 数据恢复方法、装置、设备、存储介质和计算机程序产品 - Google Patents

数据恢复方法、装置、设备、存储介质和计算机程序产品 Download PDF

Info

Publication number
CN116974814A
CN116974814A CN202211730498.8A CN202211730498A CN116974814A CN 116974814 A CN116974814 A CN 116974814A CN 202211730498 A CN202211730498 A CN 202211730498A CN 116974814 A CN116974814 A CN 116974814A
Authority
CN
China
Prior art keywords
data
recovery
approval
deleted
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211730498.8A
Other languages
English (en)
Inventor
黄铁鸣
游印辉
吴晓珊
李斌
冯泽荣
朱标亦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202211730498.8A priority Critical patent/CN116974814A/zh
Publication of CN116974814A publication Critical patent/CN116974814A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种数据恢复方法、装置、计算机设备、存储介质和计算机程序产品。方法包括:接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。这样,提高了数据恢复效率。

Description

数据恢复方法、装置、设备、存储介质和计算机程序产品
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据恢复方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机技术的发展,越来越多的企业通过通讯应用来进行企业通讯。为了确保企业的办公效率,常常通过通讯应用来实现企业中的审批流程,即,企业员工通过通讯应用发起相应的审批请求,以使得管理人员能够及时处理审批流程。与此同时,为节省通讯应用的资源,也支持用户删除相应的审批数据,由此,会出现因操作不当而误删除了审批数据的情况。
传统技术中,为了对误删除的审批数据进行数据恢复,常常需要企业的用户向通讯应用的客服提出恢复请求,然后,由该通讯应用的后台技术人员通过工具手动进行数据恢复。然而,在面对大量的数据恢复请求的情况下,手动进行数据恢复的操作的效率低下,即存在数据恢复效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高数据恢复效率的数据恢复方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
本申请提供了一种数据恢复方法。所述方法包括:
接收针对至少一个已删除审批数据的恢复操作;
响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
本申请还提供了一种数据恢复装置。所述装置包括:
接收模块,用于接收针对至少一个已删除审批数据的恢复操作;
创建模块,用于响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
发送模块,用于将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
恢复模块,用于响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
在一个实施例中,所述装置还包括查询模块,所述查询模块,用于接收基于目标账号发起的对已删除审批数据的查询操作;从信息库查询与所述目标账号关联的且标记为已删除状态的审批数据;响应于所述查询操作,返回所述标记为已删除状态的审批数据。
在一个实施例中,所述装置还包括删除模块,所述删除模块,用于接收基于目标账号发起的对目标审批数据的删除操作;响应于所述删除操作,将信息库中存储的所述目标审批数据标记为已删除状态。
在一个实施例中,所述删除模块,用于当所述目标审批数据的数据类型为审批单据时,响应于所述删除操作,将信息库中存储的所述目标审批数据的数据状态标记为已删除状态;当所述目标审批数据的数据类型为审批模板时,响应于所述删除操作,将信息库中存储的所述目标审批数据的数据状态标记为已删除状态,并查询信息库中以所述目标审批数据为审批模板形成的审批单据,将查询到的审批单据的数据状态标记为已删除状态。
在一个实施例中,所述创建模块,还用于根据所述至少一个已删除审批数据的数据标识,从信息库中检查所述数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则执行所述响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务的步骤。
在一个实施例中,所述创建模块,用于创建针对所述至少一个已删除审批数据的恢复任务;生成所述恢复任务的任务标识;将所述任务标识与所述至少一个已删除审批数据的数据标识关联;初始化所述恢复任务的任务状态为未完成;将所述恢复任务与所述任务状态记录至信息库。
在一个实施例中,所述发送模块,用于通过所述消息队列根据所述恢复任务的任务标识,从信息库中查询所述恢复任务的任务状态;接收所述消息队列在所述恢复任务的任务状态不处于完成状态时,根据所述恢复任务所针对的至少一个已删除审批数据的数据标识所发起的恢复请求。
在一个实施例中,所述装置还包括检查模块,所述检查模块用于通过所述消息队列,根据所述数据标识从信息库中检查所述数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则根据所述数据标识发起恢复请求。
在一个实施例中,所述审批数据的数据类型为审批模板,所述检查模块用于通过所述消息队列,根据所述审批模板的模板标识从信息库中检查所述审批模板的数据状态,在所述审批模板的数据状态为已删除状态时根据所述模板标识发起恢复请求;响应于关于所述审批模板的恢复请求,恢复所述审批模板后返回恢复应答;通过所述消息队列,在接收到关于所述审批模板的恢复应答后,依据所述恢复应答更新所述审批模板的数据状态为已恢复,并检查与所述审批模板关联的审批单据的数据状态,在所述审批单据的数据状态为已删除状态时根据所述审批单据的单据标识发起恢复请求;响应于关于所述审批单据的恢复请求,恢复所述审批单据后返回恢复应答;通过所述消息队列,在接收到关于所述审批单据的恢复应答后,依据所述恢复应答更新所述审批单据的数据状态为已恢复,并在与所述审批模板关联的各审批单据的数据状态均为已恢复时,更新所述恢复任务的任务状态为完成状态。
在一个实施例中,所述装置还包括返回模块,所述返回模块用于接收针对所述恢复任务的查询操作;从信息库中查询关于所述恢复任务的任务状态;响应于所述查询操作,返回所述恢复任务、所述恢复任务的任务状态以及所述恢复任务所针对的至少一个审批数据。
本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收针对至少一个已删除审批数据的恢复操作;
响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收针对至少一个已删除审批数据的恢复操作;
响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收针对至少一个已删除审批数据的恢复操作;
响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
上述数据恢复方法、装置、计算机设备、存储介质和计算机程序产品,通过接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起,避免了后续对已恢复审批数据进行重复恢复,确保了数据恢复的效率;响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。也即是,在确保了恢复任务所针对的至少一个已删除审批数据是未恢复的情况下,自动完成对已删除审批数据的数据恢复操作,无需人工进行数据恢复,提高了数据恢复的效率。
本申请提供了一种数据恢复方法。所述数据恢复方法包括:
在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
本申请提供了一种数据恢复装置。所述装置包括:
展示模块,用于在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
触发模块,用于响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
显示模块,用于响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
在一个实施例中,所述触发模块,用于响应于对所述数据恢复界面中数据类型筛选控件的触发操作,显示数据类型为审批模板的已删除审批数据列表;响应于对所述已删除审批数据列表中目标模板触发的恢复操作,显示通过所述目标模板创建的审批单据的已删除审批单据列表;响应于对所述已删除审批单据列表中至少一个已删除审批单据的恢复操作,触发用于恢复所述目标模板以及所述至少一个已删除审批单据的恢复任务。
本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
上述数据恢复方法,通过在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,数据恢复界面中包括已删除审批数据列表,已删除审批数据列表中的各个已删除审批数据通过社交应用的相应业务功能基于目标账号发起后再删除,社交应用包括多个不同的业务功能;响应于对已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复至少一个已删除审批数据的恢复任务,从而,能够实现自动对已删除审批数据进行数据恢复操作;响应于对数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,历史恢复记录中包括恢复任务及相应的恢复进度提示信息。这样,可支持对社交应用的任意业务功能生成后又删除的审批数据进行恢复,通过数据恢复界面的入口页面能够及时、统一显示通过不同业务功能删除的审批数据的恢复进度提示,使得目标账号所对应的用户能够便捷且实时的确认数据恢复的进度。
附图说明
图1为一个实施例中数据恢复方法的应用环境图;
图2为一个实施例中数据恢复方法的流程示意图;
图3为一个实施例中查询操作的流程示意图;
图4为一个实施例中目标审批数据的删除操作的流程示意图;
图5为一个实施例中检查数据状态步骤的流程示意图;
图6为一个实施例中恢复审批数据的流程示意图;
图7为另一个实施例中恢复审批数据的流程示意图;
图8为一个实施例中查询操作的流程示意图;
图9为另一个实施例中数据恢复方法的流程示意图;
图10为一个实施例中数据恢复入口的界面示意图;
图11A为一个实施例中数据恢复界面的示意图;
图11B为一个实施例中二级页面的示意图;
图11C为一个实施例中数据恢复界面的示意图;
图12A为一个实例中恢复进度提示界面的示意图;
图12B为另一个实例中恢复进度提示界面的示意图;
图12C为另一个实例中恢复进度提示界面的示意图;
图13为一个实施例中恢复记录界面的示意图;
图14为一个实施例中数据恢复装置的结构框图;
图15为另一个实施例中数据恢复装置的结构框图;
图16为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
相关技术中,为了确保企业的办公效率,企业人员常常通过通讯应用发起审批申请,以使得管理人员能够对审批申请进行处理,以完成审批流程。为了节省通讯应用的资源,常常需要对通讯应用中已完成的审批数据、或者错误的审批数据进行删除。在删除过程中常常会因操作不当而误删除审批数据,此时,需要企业的用户向通讯应用提出恢复请求,以使得通讯应用的后台技术人员手动进行数据恢复。一旦面临大量的数据恢复任务,存在数据恢复效率低的问题。
本申请实施例提供的数据恢复方法,通过接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起,避免了后续对已恢复审批数据进行重复恢复,确保了数据恢复的效率;响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。也即是,在确保了恢复任务所针对的至少一个已删除审批数据是未恢复的情况下,自动完成对已删除审批数据的数据恢复操作,无需人工进行数据恢复,提高了数据恢复的效率。
本申请实施例提供的数据恢复方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。
在一个实施例中,服务器104响应于目标用户在终端102上的社交应用的选择操作,接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;服务器104将恢复任务发送至消息队列,服务器104接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;服务器104响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种数据恢复方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,接收针对至少一个已删除审批数据的恢复操作。
其中,审批数据为用于审批流程的数据,可选地,审批数据是社交应用中与相应业务功能提供的审批流程所对应的数据。示例性地,审批数据可以是财务业务功能所对应的数据,也可以是户口档案业务功能所对应的数据。可选地,该审批数据的数据类型包括审批模板和审批单据。审批单据是用户按照审批模板填写的单据。恢复操作是将数据状态为已删除状态的已删除审批数据进行恢复的操作。
可选地,服务器接收针对处于相同数据类型下的至少一个已删除审批数据的恢复操作。示例性地,服务器接收针对处于目标数据类型下的至少一个已删除审批数据的恢复操作,或者,服务器接收针对处于目标数据类型下的至少一个已删除审批数据的恢复操作。
可选地,服务器确定已删除审批数据的数据类型为审批单据时,每一次恢复操作,用户可以选择一个或多个已删除审批单据。示例性地,终端中的社交应用登录了目标用户所对应的目标账号,目标用户可以选择源自目标审批模板的一个已删除审批单据,或者目标用户可以选择源自不同审批模板的多个已删除审批单据。在此情况下,目标审批模板的数据状态为非删除状态,即该目标审批模板本身没有删除,但,目标审批模板所关联的审批单据中存在至少一个已删除审批单据。因此,服务器接收针对源自目标审批模板一个已删除审批单据的恢复操作,或者,服务器接收针对源自不同审批模板的多个已删除审批单据的恢复操作。
示例性地,服务器确定已删除审批数据的数据类型为审批模板时,每一次恢复操作,用户选择一个或多个已删除审批模板。示例性地,在终端的社交应用登录了目标用户所对应的目标账号之后,目标用户可以选择一个已删除审批模板或多个不同的且数据状态为已删除状态的已删除审批模板。因此,服务器接收针对一个已删除审批模板的恢复操作,或者,服务器接收针对多个不同的且数据状态为已删除状态的已删除审批模板的恢复操作。
进一步地,目标用户可以在确定了一个或多个已删除审批模板之后,选择每个已删除审批模板下的至少一个审批单据进行恢复。也即是,在用户对已删除审批模板进行恢复之后,可以不对该已删除审批模板下所有的审批单据进行恢复,即有选择的恢复该已删除审批模板下的部分审批单据。
步骤204,响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态。
其中,任务状态用于反映恢复任务的任务进度,该任务状态包括已完成与未完成,未完成又分为恢复中和恢复失败两种情况,已完成即为恢复成功的任务状态。
可选地,服务器响应于恢复操作,确定恢复操作所对应的至少一个已删除审批数据。创建针对至少一个已删除单据数据的恢复任务,并生成恢复任务的任务标识。服务器初始化恢复任务的任务状态为未完成。该任务标识用于查询该恢复任务的任务状态。每个恢复任务对应唯一的任务标识。
需要说明的是,在创建恢复任务之前,为避免恢复任务中混有已恢复的审批数据或者混有未删除的审批数据,则需要对恢复操作所涉及到的审批数据的数据状态进行校验。
例如,服务器响应于恢复操作,确定恢复操作所对应的至少一个已删除审批单据。在校验到至少一个已删除审批数据的数据状态为已删除状态之后,创建针对该至少一个已删除单据数据的恢复任务,并生成恢复任务的任务标识。服务器初始化恢复任务的任务状态。服务器将该任务标识和与该任务标识对应的任务状态发送至信息库进行存储,以指示信息库记录或更新任务状态。
当然,该任务状态的初始化也可以是由信息库执行,然后信息库记录或更新任务状态。
步骤206,将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起。
可选地,服务器将恢复任务发送至消息队列。若消息队列查询到恢复任务所针对的至少一个已删除审批数据的任务状态标记为未完成时,则服务器接收由消息队列发送的恢复请求。本步骤中的消息队列是用于恢复操作的消息队列。
在确定了任务状态为未完成时,消息队列将执行恢复任务,此时,若恢复任务涉及到多个已删除审批数据的恢复时,只有当恢复任务中所有的已删除审批数据均完成数据恢复后,该恢复任务的任务状态才会为已完成,否则,则任务状态仍为未完成。
若服务器或者消息队列发生了故障,比如中断,此时,恢复任务的任务状态为未完成,且恢复任务中存在完成了数据恢复的已删除审批数据和未完成数据恢复的已删除审批数据。在修复故障后,为避免对完成了数据恢复的已删除审批数据进行重复数据恢复操作,在消息队列发送恢复请求之前,会对审批数据的数据状态进行更新,即不对完成了数据恢复的已删除审批数据进行数据恢复,直接对未完成数据恢复的已删除审批数据进行数据恢复。因此,在恢复请求之前,消息队列需要对所有已删除审批数据的数据状态进行确定。
消息队列是一种先进先出的数据结构,加入消息队列的恢复任务将被依次取出以执行相应的恢复操作,这样可避免服务器接收到来自大量终端的恢复请求时,造成服务器处理压力过大的问题。
可选地,为避免消耗过多的内存,服务器将恢复任务发送到消息队列中。这样,可以由分布式节点依次从消息队列中取出相应的恢复任务来分布式执行,能够提高处理效率。
示例性地,服务器将恢复任务和恢复任务所对应的任务标识发送至消息队列,消息队列通过任务标识查询恢复任务的任务状态。若该任务状态不为完成状态时,则消息队列查询恢复任务的任务标识所关联的数据标识,并查询数据标识所对应的数据状态。消息队列若查询到数据标识所对应的审批数据的数据状态标记为已删除状态,则服务器接收由消息队列所发送的恢复请求。
步骤208,响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。
可选地,服务器响应于恢复请求,在恢复了至少一个已删除审批数据后,服务器返回恢复应答给消息队列,以指示消息队列依据该恢复应答,更新恢复任务的任务状态。
示例性地,服务器依次对每个已删除审批数据进行数据恢复。对于每个已删除审批数据,服务器在恢复了该已删除审批数据之后,若该已删除审批数据为最后一个已删除审批数据时,服务器返回表征完成的恢复应答给消息队列,以指示消息队列依据该恢复应答,更新恢复任务的任务状态为已完成。若该已删除审批数据不为该审批单据中最后一个已删除审批数据时,服务器返回标准未完成的恢复应答给消息队列,以指示消息队列依据该恢复应答,更新恢复任务的任务状态为未完成。
上述数据恢复方法,通过接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起,避免了后续对已恢复审批数据进行重复恢复,确保了数据恢复的效率;响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。也即是,在确保了恢复任务所针对的至少一个已删除审批数据是未恢复的情况下,自动完成对已删除审批数据的数据恢复操作,无需人工进行数据恢复,提高了数据恢复的效率。
如前所述,服务器响应于目标用户在终端的社交应用中的选择操作,将接收针对至少一个已删除审批数据的恢复操作。在此之前,目标用户需要确定当前有哪些是已经删除的审批数据。
为此,在一个实施例中,接收针对至少一个已删除审批数据的恢复操作之前,方法还包括:接收基于目标账号发起的对已删除审批数据的查询操作;从信息库查询与目标账号关联的且标记为已删除状态的审批数据;响应于查询操作,返回标记为已删除状态的审批数据。
其中,查询操作用于查询满足过滤条件的已删除审批数据。该过滤条件可以是预设时间段、也可以是创建审批数据的创建人所对应的创建账号。信息库用于存储信息,示例性地,信息库存储了预设时间段内各企业分别对应的流水记录,每个企业所对应的流水记录记录了该企业在预设时间段内删除的至少一个审批数据的数量,或者记录了该企业删除了由创建账号所创建的至少一个审批数据。
可选地,服务器接收基于以目标账号登录的社交应用所发起的对已删除审批数据的查询操作。服务器从信息库中查询与目标账号关联的且标记为已删除状态的审批数据。服务器将标记为已删除状态的审批数据返回至该终端中的社交应用。
示例性地,查询操作的过滤条件为预设时间段。在社交应用以目标账号登录时,服务器接收基于目标账号发起的对已删除审批数据的查询操作,并根据该查询操作中的过滤条件,从信息库中查询与目标账号所属的企业对应的、且在预设时间段内删除的、且标记为已删除状态的审批数据。服务器将标记为已删除状态的审批数据返回至该社交应用。此时,社交应用的界面上显示预设时间段内删除的审批数据。该示例中所涉及到一个预设时间段,当然,过滤条件还可以是多个互不重合的预设时间段,即,任意两两预设时间段不重合。相应的,服务器从信息库中查询与目标账号所属企业对应的、且在多个互不重合的预设时间段内删除的、且标记为已删除状态的审批数据。
示例性地,查询操作的过滤条件为创建账号。在社交应用以目标账号登录时,服务器接收基于目标账号发起的对已删除审批数据的查询操作,并根据该查询操作中的过滤条件,从信息库中查询与目标账号所属的企业对应的、且至少一个创建账号所创建的、且标记为已删除状态的审批数据。
例如,如图3所示,为一个实施例中查询操作的流程示意图。企业的目标用户以目标账号登录了终端中的社交应用之后,服务器接收基于终端中目标账号发起的对已删除审批数据进行查询的查询操作,调用信息库,以使得信息库根据查询请求中的过滤条件查询流水记录,即查询目标账号所属企业在预设时间段内删除的至少一个审批数据,信息库返回标记已删除状态的审批数据至服务器,服务器将标记为已删除状态的审批数据返回至该终端中的社交应用。
上述图3所对应的实施例中信息库是独立于服务器的,当然,信息库也可以是包含在服务器中的,具体不作限定。
在本实施例中,通过接收基于目标账号发起的对已删除审批数据的查询操作,通过信息库来完成查询操作,从而,能够在终端上及时且实时显示查询操作的结果。
在一个实施例中,接收基于目标账号发起的对已删除审批数据的查询操作之前,方法还包括:接收基于目标账号发起的对目标审批数据的删除操作;响应于删除操作,将信息库中存储的目标审批数据标记为已删除状态。
可选地,服务器接收基于目标账号发起的对目标审批数据的删除操作,服务器响应于该删除操作,确定与该删除操作对应的目标审批数据的数据标识,并将该数据标识的数据状态标记为已删除状态。
示例性地,服务器接收基于目标账号发起的对至少一个目标审批数据的删除操作,服务器响应于该删除操作,确定与该删除操作对应的至少一个目标审批数据的数据标识,并根据该至少一个目标审批数据的数据标识,将信息库中存储的至少一个目标审批数据标记为已删除状态。
上述所提及的该删除操作可以是对一个目标审批数据的删除操作,也可以是对多个目标审批数据的删除操作。若是对多个目标审批数据的删除操作,多个目标审批数据可以都是目标审批单据;也可以都是目标审批模板;也可以是即包含目标审批单据,又包含与目标审批单据所关联的审批模板不同的目标审批模板,如,现包括2个目标审批数据,分别是目标审批单据1和目标审批模板A,则目标审批单据1所关联的审批模板不为目标审批模板A,以避免对审批单据进行重复删除。此时,服务器响应于该删除操作,依次将多个目标审批数据的数据状态标记为已删除状态。
在本实施例中,在接收到基于目标账号发起的对目标审批数据的删除操作之后,直接执行删除操作,并实时且准确的将信息库中存储的目标审批数据标记为已删除状态,以使得后续可以根据信息库中审批数据的数据状态,对已删除状态的审批数据进行删除,有效规避了对未删除或已完成数据恢复的审批数据进行数据恢复,确保了数据恢复的有效性。
在一个实施例中,响应于删除操作,将信息库中存储的目标审批数据标记为已删除状态,包括:当目标审批数据的数据类型为审批单据时,响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态;当目标审批数据的数据类型为审批模板时,响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态,并查询信息库中以目标审批数据为审批模板形成的审批单据,将查询到的审批单据的数据状态标记为已删除状态。
其中,数据状态用于表征数据的删除状态,即数据状态包括已删除状态、未删除状态、已完成数据恢复的状态。
可选地,当目标审批数据的数据类型为审批单据时,服务器响应于删除操作,确定目标审批数据的数据标识,并从信息库中查询出与该数据标识对应的目标审批数据的数据状态,并将目标审批数据的数据状态标记为已删除状态。此时,目标审批数据的数据标识即为审批单据的单据标识。
当目标审批数据的数据类型为审批模板时,响应于删除操作,确定目标审批数据的数据标识,并从信息库中查询与该数据标识对应的数据状态。服务器将目标审批数据的数据状态标记为已删除状态,并查询信息库中以目标审批数据为审批模板形成的审批单据的单据标识,并根据查询到的审批单据的单据标识,将以目标审批数据为审批模板形成的审批单据进行删除,将查询到的审批单据的数据状态标记为已删除状态。此时,目标审批数据的数据标识即为审批模板的模板标识。
为更清楚详细描述目标审批数据的删除操作,如图4所示,为一个实施例中目标审批数据的删除操作的流程示意图,在该实施例中,执行本申请实施例提供的数据恢复方法的服务器可提供审批服务、数据保障服务、消息队列和信息库四种服务,且该消息队列是用于删除操作的消息队列。其中,这四种服务可以部署在同一服务器中,也可以各自部署在不同的服务器中,具体不作限定。
在社交应用中呈现有审批服务的界面中,目标用户点击当前需要删除的目标审批数据。审批服务响应于用户的点击操作,通过原有的删除逻辑对该目标审批数据进行删除,即,审批服务根据目标审批数据的数据标识向数据保障服务发起删除请求,数据保障服务器校验该数据标识对应的审批数据在信息库中目前的数据状态,若为未删除状态,则通过数据保障服务将该删除请求转发至消息队列,再通过消息队列删除该审批数据,并在删除成功后更新信息库中该目标审批数据的数据状态为已删除。具体地,在通过原有删除逻辑删除了审批数据之后,当目标审批数据的数据类型为审批单据时,数据保障服务响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态。当该目标审批数据的数据类型为审批模板时,数据保障服务响应于该删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态,并查询信息库中以目标审批数据为审批模板形成的审批单据,将查询到的审批单据的数据状态标记为已删除状态。数据保障服务获取目标审批数据的删除状态。
之后,审批服务创建与目标审批数据的数据标识对应的用于记录删除操作的记录任务,该记录任务用于记录用户删除目标审批数据的删除操作流水信息。此时,审批服务异步调用消息队列来记录删除操作流水信息。
消息队列在根据目标审批数据的数据标识判断该目标审批数据是否为删除状态,若是,则发送携带数据标识的插入请求给数据保障服务,数据保障服务接收该插入请求,并确定与数据标识对应的流水记录。数据保障服务将该流水记录发送给信息库,信息库存储与数据标识对应的流水记录,并返回存储应答给数据保障服务,数据保障服务返回该存储应答给消息队列。
在本实施例中,当目标审批数据的数据类型为审批单据时,将信息库中存储的目标审批数据的数据状态更改为已删除状态。当目标审批数据的数据类型为审批模板时,在将数据状态更改为已删除状态之后,将该目标审批数据所关联的所有审批单据的数据状态都更改为已删除状态。因此,能够确保删除操作后对目标审批数据的数据标识进行准确且实时的更改。
在进行创建恢复任务之前,为了确保已删除审批数据的数据状态为已删除,则服务器需要对每个已删除审批数据的删除状态进行确定。有鉴于此,在一个实施例中,响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务之前,方法还包括:根据至少一个已删除审批数据的数据标识,从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则执行响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务的步骤。
可选地,服务器根据至少一个已删除审批数据的数据标识,从信息库中获取与数据标识对应的审批数据的数据状态,若该审批数据的数据状态为已删除状态,则服务器执行响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务的步骤。
若该审批数据的数据状态不为已删除状态,则服务器直接返回错误提示至终端。若数据状态不为已删除状态,则说明该审批数据已经完成了数据恢复,或者说明该审批数据未被删除。
示例性地,服务器响应于恢复操作,确定恢复列表,该恢复列表包括至少一个已删除审批数据。服务器根据该至少一个已删除审批数据的数据标识,从信息库中获取与数据标识对应的审批数据的数据状态,并校验每个已删除审批数据的数据状态是否为已删除状态。将不为已删除状态的审批数据从该恢复列表中剔除,得到剔除后的恢复列表。
若该剔除后的审批列表中存在至少一个审批数据,则说明该剔除后的恢复列表中的每个审批数据的数据状态均为已删除状态。因此,执行响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务的步骤。若剔除后的审批列表中不存在一个审批数据,则说明不存在已删除审批数据,则服务器直接返回错误提示至终端。
在本实施例中,在进行创建恢复任务之前,对已删除审批数据的数据状态进行再次确认,能够规避后续对不为已删除状态的审批数据进行无效回复。
在一个实施例中,响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态,包括:创建针对至少一个已删除审批数据的恢复任务;生成恢复任务的任务标识;将任务标识与至少一个已删除审批数据的数据标识关联;初始化恢复任务的任务状态为未完成;将恢复任务与任务状态记录至信息库。
可选地,服务器响应于恢复操作,确定该恢复操作所对应的至少一个已删除审批数据。创建针对至少一个已删除审批数据的恢复任务,并生成恢复任务的任务标识。服务器将任务标识与至少一个已删除审批数据的数据标识关联,并将该初始化恢复任务的任务状态为未完成,将该任务标识和与该任务标识对应的任务状态发送至信息库进行记录。与此同时,服务器将任务标识发送至目标账号所在的终端,以指示终端根据该任务标识进行任务进度的查询。
示例性地,服务器响应于恢复操作,确定恢复操作所对应的至少一个已删除审批数据,在校验到至少一个已删除审批数据的数据状态为已删除状态之后,创建针对该至少一个已删除审批数据的恢复任务,并生成恢复任务的任务标识。服务器将任务标识与至少一个已删除审批数据的数据标识关联,并将该恢复任务的任务状态初始化为未完成,将该任务标识和与该任务标识对应的任务状态发送至信息库进行记录。
在本实施例中,通过创建针对至少一个已删除审批数据的恢复任务,并生成与之对应的任务标识,以对恢复任务进行有效区分。然后,将该任务标识与至少一个已删除审批数据的数据标识进行关联,并将未完成的任务状态和恢复任务记录至信息库中。这样,后续用户在查询该恢复任务时,服务器可以根据该任务标识能够实现实时查询恢复任务的任务进度。
在一个实施例中,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起,包括:通过消息队列根据恢复任务的任务标识,从信息库中查询恢复任务的任务状态;接收消息队列在恢复任务的任务状态不处于完成状态时,根据恢复任务所针对的至少一个已删除审批数据的数据标识所发起的恢复请求。
可选地,通过消息队列获取与恢复任务对应的任务标识,根据该任务标识,通过消息队列从信息库中查询恢复任务的任务状态。若消息队列查询到该恢复任务的任务状态不处于未完成状态时,消息队列根据恢复任务所针对的至少一个已删除审批数据的数据标识,发起恢复请求至服务器。
如前所述,恢复任务所针对的已删除审批数据可能是一个,也可能是多个。若是多个已删除审批数据,只要存在一个已删除审批数据未完成数据恢复,则恢复任务的任务状态为未完成状态。
因此,消息队列确定任务标识之后,确定与任务标识所关联的数据标识,若存在至少一个数据标识所对应的已删除审批数据未完成数据恢复,则该任务标识所对应的任务状态为未完成状态。
在本实施例中,在接收恢复请求之前,需要通过消息队列确定恢复任务的任务状态是否为完成状态,避免对完成状态的任务进行无效的数据恢复,确保了恢复任务的有效性。
进一步地,又如前所述,若服务器或消息队列出现故障导致恢复任务中断后,此时,恢复任务中可能存在已恢复的审批数据(此时,数据状态不为已删除状态)和暂未恢复的审批数据(此时,数据状态仍为已删除状态)。因此,为了确保后续对已删除审批数据进行数据恢复,而避免对已恢复的审批数据再次进行数据恢复,此时,需要判断是否存在数据状态仍为已删除状态的审批数据。若存在,则消息队列才能够发起恢复请求,且该恢复请求只对已删除状态的审批数据进行恢复。
因此,在一个实施例中,消息队列在根据数据标识发起恢复请求之前,方法还包括:通过消息队列,根据数据标识从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则根据数据标识发起恢复请求。
可选地,在消息队列确定了恢复任务的任务状态为未完成状态之后,通过消息队列,确定与恢复任务对应的数据标识,并根据数据标识从信息库中确定与该数据标识对应的审批数据的数据状态是否标记为已删除状态。若是,则消息队列向服务器发送恢复请求,该恢复请求携带已删除状态所对应的数据标识。
示例性地,若审批数据的数据类型为审批单据,则需要确定已删除的审批单据所属的审批模板未被删除。因此,在消息队列确定了恢复任务的任务状态为未完成状态之后,通过消息队列一一校验每个已删除审批单据的数据状态。
若存在至少一个已删除审批单据的数据状态仍为已删除状态,如,存在一个已删除审批单据的数据状态仍为已删除状态,则消息队列校验该已删除审批单据所属的审批模板的数据状态是否为已删除,若审批模板的数据状态为未删除,则消息队列向服务器发起恢复请求。
如,存在多个已删除审批单据的数据状态仍为已删除状态,每个已删除审批单据所属的审批模板可以相同,也可以不同。则消息队列校验每个已删除审批单据所属的审批模版的数据状态是否为已删除,若存在至少一个已删除审批单据所属的审批模版的数据状态为未删除,则消息队列向服务器发起携带该至少一个已删除审批单据的单据标识的恢复请求。
示例性地,若审批数据的数据类型为审批模板,则需要确定已删除审批模板的数据状态是否仍为已删除状态。若是,则消息队列向服务器发送恢复请求,该恢复请求携带已删除状态所对应的模板标识。
在本实施例中,通过消息队列对数据标识所对应的审批数据的数据状态进行查询,若查询到该数据状态为已删除状态,则说明该数据状态所对应的审批数据仍未进行数据恢复,此时,通过发起恢复请求对仍未数据恢复的已删除审批数据进行数据恢复,规避了对已经完成数据恢复的已删除审批数据进行重复数据恢复操作。
在一个实施例中,如图5所示,审批数据的数据类型为审批模板,通过消息队列,根据数据标识从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态,包括:
步骤502,通过消息队列,根据审批模板的模板标识从信息库中检查审批模板的数据状态,在审批模板的数据状态为已删除状态时根据模板标识发起恢复请求。
可选地,通过消息队列,根据审批模板的模板标识从信息库中检查该审批模板的数据状态。若在审批模板的数据状态为已删除状态时,通过消息队列根据模板标识发起恢复请求。该审批模板即为已删除审批模板。
步骤504,响应于关于审批模板的恢复请求,恢复审批模板后返回恢复应答。
可选地,服务器响应于由消息队列发送的关于审批模板的恢复请求,获取与该审批模板的模板标识对应的模板数据,并根据该模板数据恢复审批模板。服务器在恢复审批模板后向消息队列返回恢复应答。
需要说明的是,该步骤所恢复的审批模板是一个空模板,即没有所关联的审批单据的单据数据。因此,还需进一步恢复该审批模板所关联的至少一个审批单据。
步骤506,通过消息队列,在接收到关于审批模板的恢复应答后,依据恢复应答更新审批模板的数据状态为已恢复,并检查与审批模板关联的审批单据的数据状态,在审批单据的数据状态为已删除状态时根据审批单据的单据标识发起恢复请求。
可选地,通过消息队列,在接收到关于审批模板的恢复应答后,依据恢复应答更新审批模板的数据状态为已恢复。通过消息队列发送查询单据标识请求至服务器,该查询单据标识请求用于查询与该审批模板关联的审批单据的单据标识。服务器通过获取审批模板的模板标识所对应的流水记录。其中,该流水记录还包括了该模板标识所关联的单据标识。服务器将查询到的与审批模板关联的审批单据的单据标识发送至消息队列。消息队列根据至少一个审批单据的单据标识,检查与该审批模板关联的审批单据的数据状态。在该审批单据的数据状态为已删除状态时,根据该审批单据的单据标识发起恢复请求。
步骤508,响应于关于审批单据的恢复请求,恢复审批单据后返回恢复应答。
可选地,服务器响应于关于审批单据的恢复请求,该恢复请求携带审批单据所对应的单据标识,服务器获取与单据标识对应的单据数据,并根据该单据数据恢复与审批模板关联的审批单据。服务器在恢复审批单据后返回恢复应答至消息队列。
示例性地,服务器响应于关于审批单据的恢复请求,该恢复请求携带该审批模板所关联的至少一个审批单据所对应的单据标识,服务器获取每个审批单据所对应的单据数据,根据每个审批单据所对应的单据数据,恢复该审批模板所关联的至少一个审批单据。
需要说明的是,由前述可知,在数据类型为审批模板时,恢复操作可以是恢复审批模板所关联的所有审批单据,也可以是恢复审批模板所关联的部分审批单据,如一个或多个审批单据。因此,上述示例中,至少一个审批单据是指该审批模板所关联的一个、或者多个、或者所有审批单据进行恢复。
步骤510,通过消息队列,在接收到关于审批单据的恢复应答后,依据恢复应答更新审批单据的数据状态为已恢复,并在与审批模板关联的各审批单据的数据状态均为已恢复时,更新恢复任务的任务状态为完成状态。
可选地,通过消息队列,在接收到服务器发送的关于审批单据的恢复应答后,依据恢复应答,将审批单据的数据状态更新为已恢复。并且,在与审批模板管理的各审批单据的数据状态均为已恢复时,通过消息队列将恢复任务的任务状态更新为完成状态。
为更加清楚的描述在审批数据的数据类型为审批模板的情况下审批数据的恢复过程,如图6所示,为一个实施例中恢复审批数据的流程示意图。在该实施例中涉及到服务器提供的数据保障服务、消息队列和信息库三种服务。其中,这三种服务可以部署在同一服务器中,也可以各自部署在不同的服务器中,具体不作限定。
服务器中的数据保障服务接收由终端所提交的审批模板的恢复操作,数据保障服务根据已删除审批模板的模板标识,从信息库中查询该模板标识对应的审批模板的数据状态,若查询到该数据状态为已删除状态,则数据保障服务创建针对该已删除审批模板的恢复任务,并生成与该恢复任务对应的任务标识。数据保障服务初始化恢复任务的任务状态,并将该任务标识与该已删除审批模板的模板标识进行关联。数据保障服务将携带恢复任务、任务状态和模板标识发送至信息库,以指示信息库记录或更新任务状态,返回更新或记录任务状态的应答给数据保障服务。数据保障服务将该恢复任务发送至消息队列,即使得恢复任务入队,与此同时,数据保障服务返回该已删除审批模板所对应的任务标识至终端。
消息队列在接收到恢复任务后,消息队列根据恢复任务的任务标识,从信息库中查询恢复任务的任务状态,若查询到该任务状态不处于完成状态时,信息库返回未完成状态的应答给消息队列。
消息队列根据已删除审批模板的模板标识,从信息库中检查该已删除审批模板的数据状态,在该数据状态为已删除状态时,消息队列根据模板标识发起恢复请求。数据保障服务响应于关于该已删除审批模板的恢复请求,调用审批服务中的已删除审批模板的模板数据恢复该已删除审批模板。该审批服务为另一个服务,用于存储审批模板和审批单据的数据。该审批服务可以和数据保障服务部署在相同服务器,也可以部署在不同的服务器,具体不作限定。数据保障服务在恢复该已删除审批模板后返回恢复应答至消息队列。消息队列在接收到该恢复应答后,依据该恢复应答,更新该已删除审批模板的数据状态为已恢复,并将更新后的数据状态存储至信息库。
通过消息队列发送查询单据标识请求至数据保障服务,该查询单据标识请求用于查询与该已删除审批模板关联的审批单据的单据标识。数据保障服务获取该已删除审批模板的模板标识所对应的流水记录。数据保障服务将查询到的与已删除审批模板关联的审批单据的单据标识返回至消息队列。消息队列根据审批单据的单据标识,检查与该已删除审批模板关联的审批单据的数据状态。在该审批单据的数据状态为已删除状态时,根据该审批单据的单据标识发起恢复请求。数据保障服务响应于审批单据的恢复请求,恢复已删除审批模板所关联的审批单据后返回恢复应答。消息队列在接收到关于审批单据的恢复应答后,依据恢复应答更新审批单据的数据状态为已恢复,并将更新的审批单据的数据状态发送至信息库存储,在收到信息库返回的应答后,进行下一审批单据的恢复过程,直至与已删除审批模板所关联的各审批单据的数据状态均为已恢复时,更新恢复任务的任务状态为完成状态,并将完成状态发送至信息库进行存储。
在本实施例中,首先对已删除审批模板本身进行恢复,此时,恢复的审批模板中并未关联任何审批单据。为进一步确保审批模板恢复的准确性,通过确定已删除审批模板所关联的审批单据的单据标识,实现对已删除审批模板所关联的审批单据的及时恢复,从而,提高了对已删除审批模板的数据恢复过程的准确性和效率。
在一个实施例中,审批数据的数据类型为审批单据,通过消息队列,根据数据标识从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态,包括:对于恢复任务中的每个审批单据,通过消息队列,根据该审批单据的单据标识从信息库中检查审批单据的数据状态,在审批单据的数据状态为已删除状态时,检查该审批单据所属的审批模板的数据状态,若该审批模板的数据状态为未删除状态,则根据单据标识发起恢复请求;响应于关于审批单据的恢复请求,恢复审批单据后返回恢复应答;消息队列在接收到恢复应答后,依据恢复应答更新审批单据的数据状态为已恢复,并返回已更新的应答。消息队列在接收到该已更新的应答之后,对下一审批单据进行数据恢复,直至该恢复任务中所有审批单据的数据状态均为已恢复时,更新恢复任务的任务状态为完成状态。其中,本实施例中涉及的审批单据即为已删除审批单据。
为更加清楚的描述在审批数据的数据类型为审批单据的情况下审批数据的恢复过程,如图7所示,为另一个实施例中恢复审批数据的流程示意图。在该实施例中涉及到服务器提供的数据保障服务、消息队列和信息库三种服务。其中,这三种服务可以部署在同一服务器中,也可以各自部署在不同的服务器中,具体不作限定。
服务器中的数据保障服务接收由终端所提交的审批单据列表的恢复操作,该审批单据列表包括多个已删除审批单据。对于每个审批单据,数据保障服务根据该已删除审批单据的单据标识,从信息库中查询该单据标识对应的审批单据的数据状态,若查询到该数据状态为已删除状态,则数据保障服务创建针对该已删除审批单据的恢复任务,并生成与该恢复任务对应的任务标识。数据保障服务初始化恢复任务的任务状态,数据保障服务将携带恢复任务和单据标识发送至信息库,以指示信息库记录或更新任务状态,返回更新或记录任务状态的应答给数据保障服务。数据保障服务将该恢复任务发送至消息队列,即使得恢复任务入队,与此同时,数据保障服务返回该已删除审批单据所对应的任务标识至终端。
消息队列在接收到恢复任务后,消息队列根据恢复任务的任务标识,从信息库中查询恢复任务的任务状态,若查询到该任务状态不处于完成状态时,信息库返回未完成状态的应答给消息队列。
消息队列根据已删除审批单据的单据标识,从信息库中检查该已删除审批单据的数据状态,在该数据状态为已删除状态时,检查该已删除审批单据所属的审批模板的数据状态,若该审批模板的数据状态为未删除状态,则消息队列根据单据标识发起恢复请求。数据保障服务响应于关于该已删除审批单据的恢复请求,调用审批服务中的已删除审批单据的单据数据恢复该已删除审批单据。该审批服务为另一个服务,用于存储审批模板和审批单据的数据。该审批服务可以和数据保障服务部署在相同服务器,也可以部署在不同的服务器,具体不作限定。数据保障服务在恢复该已删除审批单据后返回恢复应答至消息队列。消息队列在接收到该恢复应答后,依据该恢复应答,更新该已删除审批单据的数据状态为已恢复,并将更新后的数据状态存储至信息库。消息队列继续对下一审批数据进行前述的数据恢复操作,直至该恢复任务中所有审批单据的数据状态均为已恢复时,更新所述恢复任务的任务状态为完成状态。
在本实施例中,在对已删除审批单据进行恢复之前,确保已删除审批单据的数据状态是否为删除状态,并确定在与该已删除审批单据所属的审批模板是未删除状态的,此时,才能及时对该已删除审批单据进行恢复,从而,提高了对已删除审批单据的数据恢复过程的效率。
在一个实施例中,方法还包括:接收针对恢复任务的查询操作;从信息库中查询关于恢复任务的任务状态;响应于查询操作,返回恢复任务、恢复任务的任务状态以及恢复任务所针对的至少一个审批数据。
可选地,服务器接收针对恢复任务的查询操作。该查询操作中携带该恢复任务所对应的任务标识。服务器根据该任务标识从信息库中查询关于恢复任务的任务状态,并确定恢复任务所针对的至少一个审批数据的数据状态。服务器响应于该查询操作,返回恢复任务、恢复任务的任务状态以及恢复任务所针对的至少一个审批数据。
示例性地,如图8所示,为一个实施例中查询操作的流程示意图。目标用户点击社交应用中数据恢复入口的图标,社交应用接收针对恢复任务的查询操作。该查询操作中携带该恢复任务所对应的任务标识。这样,终端可依据该任务标识发起查询请求,服务器接收到该查询请求后,通过数据保障服务根据该任务标识从信息库中查询关于恢复任务的任务状态,并确定恢复任务所针对的至少一个审批数据的数据状态。服务器响应于该查询请求,返回恢复任务、恢复任务的任务状态以及恢复任务所针对的至少一个审批数据。
在本实施例中,一旦接收针对恢复任务的查询操作,则从信息库中查询关于恢复任务的任务状态。通过响应该查询操作,返回恢复任务、恢复任务的任务状态以及恢复任务所针对的至少一个审批数据。这样,能够使得目标用户可以及时且实时的确定该恢复任务的恢复进度,提高了查询效率,也提高了目标用户查询的便捷程度。
在一个实施例中,如图9所示,提供了一种数据恢复方法,以该方法应用于终端为例进行说明,包括以下步骤:
步骤902,在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,数据恢复界面中包括已删除审批数据列表,已删除审批数据列表中的各个已删除审批数据通过社交应用的相应业务功能基于目标账号发起后再删除,社交应用包括多个不同的业务功能。
可选地,在以目标账号登录的社交应用中,终端展示数据恢复入口的界面,在该数据恢复入口的界面中,终端接收针对目标用户的数据恢复界面的选择操作,终端响应于该选择操作,终端展示关于审批数据的数据恢复界面。该数据恢复界面中显示有不同数据类型分别对应的控件,如,包括审批模板的控件和审批单据的控件。目标用户在点击目标数据类型对应的控件之后,终端在该数据恢复界面中显示与目标数据类型对应的已删除审批数据列表。可选地,该控件中还可以显示相应数据类型所对应的已删除审批数据列表中已删除审批数据的数量。其中,数据恢复界面也可以理解为是审批数据恢复界面。
需要说明的是,社交应用能够支持数量众多、且不同的业务功能,其中,每个业务功能会产生相应的审批数据。因此,为了统一管理所有业务功能的审批数据的恢复。该数据恢复界面中可以显示所有业务功能的已删除审批数据。也即是,各个业务功能都可以发起相应的审批数据,在误删除了各个业务功能分别对应的审批数据之后,在该数据恢复界面中的已删除审批列表可以显示所有业务功能分别对应的已删除审批数据,从而,可以统一对已删除审批列表中的所有业务功能的已删除审批数据进行恢复,无需找后台管理人员进行手动恢复,提高了用户体验。
如图10所示,为一个实施例中数据恢复入口的界面示意图。该数据恢复入口的界面中包括审批数据恢复的控件,该审批数据恢复的控件用于进入数据恢复界面,示例性地,目标用户点击该审批数据恢复的控件之后,终端跳转至数据恢复界面。或者,用户点击图10中审批数据恢复的控件右侧的下拉图标后,显示审批数据的类型。在用户点击了审批数据的数据类型之后,终端跳转至该数据类型选择下的数据恢复界面。或者,在用户点击了审批数据的数据类型之后,直接点击立即恢复的控件,直接进行数据恢复。具体不作限定。
该数据恢复入口的界面还显示有当前恢复任务的恢复进度,比如,图10中“恢复记录”的控件右侧显示当前恢复任务中的1个审批数据正在恢复中,当然,可以通过点击查看图标进行查看,该查看过程将在下文中提及。
步骤904,响应于对已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复至少一个已删除审批数据的恢复任务。
可选地,目标用户从已删除审批数据列表中选择至少一个已删除数据,并点击触发启动恢复控件,以触发恢复操作。终端响应于该恢复操作,触发用于恢复至少一个已删除审批数据的恢复任务。
如图11A所示,为一个实施例中数据恢复界面的示意图,该图11A是数据类型为审批模板下的数据恢复界面,即目标用户通过在该数据恢复界面上点击“审批模板”的数据类型筛选控件后,终端将在该数据恢复界面上显示已删除审批模板列表,该已删除审批模板列表中的各个已删除审批模板通过相应业务功能基于目标账号发起后再删除。终端根据删除时间确定已删除审批模板列表,该已删除审批模板列表可以依次显示各个业务功能分别对应的已删除审批模板;也可以显示同一业务功能所对应的已删除审批模板,具体不作限定。例如,图11A中,该已删除审批模板列表也可以依次显示了均为报销业务功能的多个已删除审批模板。
示例性地,如图11A所示,该已删除审批模板列表显示了报销模板01、报销模板02、报销模板03。对于每个审批模板的显示区域,该显示区域中显示了该已删除审批模板的名称,比如,显示了名称为“报销模板01”;在该名称下面还显示了应的审批单据数,比如,在名称为“报销模板01”的下方,显示了“审批模板数:10条”;在该审批模板数下方还显示了删除时间。
该数据恢复界面中还显示有启动恢复控件,该启动恢复控件用于指示终端生成恢复操作,并将该恢复操作发送至服务器进行数据恢复。示例性地,在目标用户选择“已阅读并同意服务条款”之后,目标用户点击启动恢复控件,终端响应于该点击启动恢复控件的点击操作,生成恢复操作,并将该恢复操作发送至服务器进行数据恢复。
其中,终端是根据过滤条件为删除时间来依次显示各个已删除审批模板。当然,还可以根据过滤条件为创建人来依次显示各个已删除审批模板,即在该数据恢复界面中将各个已删除审批模板的显示区域中的删除时间的信息替换为创建人的信息。还可以根据删除时间和创建人依次显示各个已删除审批模板,即在该数据恢复界面中将各个审批模板的显示区域中同时显示各个已删除审批模板分别对应的删除时间的信息和创建人的信息。具体不作限定。
此外,目标用户在选择了一个某个业务功能的已删除审批模板之后,可以点击该已删除审批模板,以指示终端跳转到二级页面。如图11B所示,为一个实施例中二级页面的示意图。如,选择了报销业务功能所对应的报销模板02之后,终端跳转至二级页面,该二级页面显示了该报销模板02所对应的各已删除审批模板,如创建人小军所创建的名称为“小军的报销模板”的已删除审批模板,创建人小超所创建的名称为“小超的报销模板”的已删除审批模板。每个已删除审批模板还显示了对应的删除时间。
在此情况下,在数据类型为审批模板时,目标用户在已删除审批模板列表中选择至少一个已删除审批模板。如选中名称为“报销模板02”中的小军的报销模板之后。在点击启动恢复控件之后,终端生成触发操作至服务器,以指示服务器接收该恢复操作进行恢复任务。此时,服务器会对已删除审批模板所关联的所有审批单据进行数据恢复。
又例如,考虑到在一些场景下,目标用户只想对已删除审批模板所关联的所有审批数据中的一个或部分的审批数据进行恢复,因此,在图11B所显示的二级页面的基础上,在每个审批模板所在区域中显示相应的下拉图标,以实现对已删除审批模板所关联的所有审批数据中的一个或部分的审批数据进行恢复。
如图11C所示,为一个实施例中数据恢复界面的示意图,该图11C是数据类型为审批单据下的数据恢复界面。即目标用户通过在该数据恢复界面上点击“审批单据”数据类型筛选控件后,终端将在该数据恢复界面上显示已删除审批单据列表,该已删除审批单据列表中的各个已删除审批单据通过相应业务功能基于目标账号发起后再删除。终端根据删除时间显示已删除审批单据列表,该已删除审批单据列表可以依次显示各个业务功能分别对应的已删除审批单据;该已删除审批单据列表也可以依次显示同一业务功能各个已删除审批单据。
示例性地,如图11C所示,该已删除审批模板列表依次显示了名称为“小明的活动经费”的已删除审批单据和名称为“小红的请假”的已删除审批单据。同时,该界面显示了各个已删除审批单据分别对应的删除时间。
该数据恢复界面中还显示有启动恢复控件,该启动恢复控件用于指示终端生成恢复操作,并将该恢复操作发送至服务器进行数据恢复。示例性地,在目标用户选择“已阅读并同意服务条款”之后,目标用户点击启动恢复控件,终端响应于该点击启动恢复控件的点击操作,生成恢复操作,并将该恢复操作发送至服务器进行数据恢复。
其中,终端是根据过滤条件为删除时间来依次显示各个已删除审批单据。当然,还可以根据过滤条件为创建人来依次显示各个已删除审批单据,即在该数据恢复界面中将各个已删除审批单据的显示区域中的删除时间的信息替换为创建人的信息。还可以根据删除时间和创建人依次显示各个已删除审批单据,即在该数据恢复界面中将各个审批单据的显示区域中同时显示各个已删除审批单据分别对应的删除时间的信息和创建人的信息。具体不作限定。
在此情况下,目标用户在审批单据的数据恢复界面中的已删除审批单据列表中选择至少一个已删除审批单据。如选中名称为“小明的活动经费”的已删除审批单据。在点击启动恢复控件之后,终端生成触发操作至服务器,以指示服务器接收恢复操作进行恢复任务。
步骤906,响应于对数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,历史恢复记录中包括恢复任务及相应的恢复进度提示信息。
可选地,在终端显示了数据恢复界面的入口界面时,终端在该入口界面中显示历史恢复记录,该历史恢复记录中包括恢复任务及相应的恢复进度提示信息。该恢复进度提示信息包括恢复中提示信息、恢复完成提示信息和恢复失败提示信息。
示例性地,在终端触发了用于恢复至少一个已删除审批数据的恢复任务之后,终端跳转恢复中的恢复进度提示界面,如图12A所示,为一个实例中恢复进度提示界面的示意图。该图12A为恢复中的恢复进度提示界面,该恢复进度提示界面显示了表征恢复中的图标,还显示了审批数据恢复的任务已提交,可在恢复记录中关注恢复状态。此外,如图12B所示,为一个实例中恢复进度提示界面的示意图。该图12B为恢复完成的恢复进度提示界面,该恢复进度提示界面显示了表征恢复完成的图标,还显示了小明的审批数据恢复完成,可在审批应用中查看恢复的数据。如图12C所示,为一个实例中恢复进度提示界面的示意图。该图12C为恢复失败的恢复进度提示界面,该恢复进度提示界面显示了表征恢复失败的图标,还显示了小明的审批数据恢复失败,可联系工程师。
终端响应于目标用户在数据恢复界面中的查看审批数据的点击操作,显示数据恢复界面的入口界面,该入口界面显示了恢复任务中各个已删除审批数据的恢复进度标识,该恢复进度标识包括恢复中标识、恢复完成标识和恢复失败标识。或者,终端响应于目标用户在数据保障服务界面中点击“恢复控件”的点击操作,跳转至恢复记录界面,该恢复记录界面显示了恢复任务中各个已删除审批数据的恢复进度标识,该恢复进度标识包括恢复中标识、恢复完成标识和恢复失败标识。如图13所示,为一个实施例中恢复记录界面的示意图。现对报销模板02的审批模板恢复,如图13所示,该恢复记录界面中显示了当前审批模板恢复的恢复进度标识,即为恢复中标识。该恢复记录界面还显示了该恢复任务的申请人名称以及申请时间。当然,该恢复记录界面还可以通过搜索框来实时搜索其他的审批数据。
需要说明的是,如前所述,已删除审批数据列表支持显示所有业务功能的已删除审批数据,并支持对所有业务功能的已删除审批数据进行统一恢复。在恢复过程中,该恢复记录界面还可显示所有业务功能分别对应的恢复任务和恢复进度提示信息,这样,用户可以直观且实时查询到所有业务功能的恢复进度。
上述数据恢复方法,通过在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,数据恢复界面中包括已删除审批数据列表,已删除审批数据列表中的各个已删除审批数据通过社交应用的相应业务功能基于目标账号发起后再删除,社交应用包括多个不同的业务功能;响应于对已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复至少一个已删除审批数据的恢复任务,从而,能够实现自动对已删除审批数据进行数据恢复操作;响应于对数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,历史恢复记录中包括恢复任务及相应的恢复进度提示信息。这样,可支持对社交应用的任意业务功能生成后又删除的审批数据进行恢复,通过数据恢复界面的入口页面能够及时、统一显示通过不同业务功能删除的审批数据的恢复进度提示,使得目标账号所对应的用户能够便捷且实时的确认数据恢复的进度。
如前所述,对于目标用户选择了数据类型筛选控件为“审批模板”,在一些场景下,目标用户只想对已删除审批模板所关联的所有审批数据中的一个或部分的审批数据进行恢复。
因此,在一个实施例中,响应于对已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复至少一个已删除审批数据的恢复任务,包括:响应于对数据恢复界面中数据类型筛选控件的触发操作,显示数据类型为审批模板的已删除审批数据列表;响应于对已删除审批数据列表中目标模板触发的恢复操作,显示通过目标模板创建的审批单据的已删除审批单据列表;响应于对已删除审批单据列表中至少一个已删除审批单据的恢复操作,触发用于恢复目标模板以及至少一个已删除审批单据的恢复任务。
可选地,终端响应于对数据恢复界面中数据类型空间的触发操作,显示数据类型为审批模板的已删除审批数据列表。终端响应于对已删除审批数据列表中目标模板触发的恢复操作,跳转至目标模板所对应的二级页面,并显示该二级页面。该二级页面显示了通过目标模板创建的审批单据的已删除审批单据列表;响应于对已删除审批单据列表中至少一个已删除审批单据的恢复操作,触发用于恢复目标模板以及至少一个已删除审批单据的恢复任务。
示例性地,在图11B所示的数据恢复界面中,在每个审批模板所在区域中,增加下拉图标,此时,在目标用户选择了至少一个已删除审批模板(即目标模板)之后,对于每个选择的已删除审批模板,目标用户点击相应的下拉图标之后,数据恢复界面将显示该审批模板所对应的所有已删除审批单据,目标用户可以选中该已删除审批模板所关联的至少一个已删除审批单据,即可以是一个已删除审批单据,也可以是部分的已删除审批单据,也可以是所有已删除审批单据。然后,目标用户点击启动恢复控件,以进行数据恢复。若目标用户选择了至少一个已删除审批模板之后,直接点击了启动恢复控件,则直接对每个选择的已删除审批模板中的所有已删除审批单据进行数据恢复。
在本实施例中,在选中了数据类型筛选控件为审批模板的情况下,可以根据用户需求对目标模板所关联的审批单据进行选择性的数据恢复,增加了数据恢复的灵活性,提高了用户在数据恢复过程中的便捷程度。
本申请还提供一种应用场景,该应用场景应用上述的数据恢复方法。具体地,该数据恢复方法在该应用场景的应用例如如下所述:针对于办公场景,企业的员工或社交应用的管理员误删了审批数据之后,为了能够自动且准确的完成误删的审批数据的数据恢复过程,可以通过本申请的数据恢复方法实现。具体地,接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。
当然并不局限于此,本申请提供的数据恢复方法还可以应用在其他应用场景中,例如在交互场景中,若商家在电子商务客户端中误删了产品相关的数据,为了能够尽快回复误删的数据,可以通过本申请的数据恢复方能够高效的完成数据恢复操作。
在一个具体的实施例中,在该实施例中涉及服务器提供的数据保障服务、消息队列和信息库三种服务。其中,这三种服务可以部署在同一服务器中,也可以各自部署在不同的服务器中,具体不作限定。
可选地,接收基于目标账号发起的对目标审批数据的删除操作。当目标审批数据的数据类型为审批单据时,响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态;当目标审批数据的数据类型为审批模板时,响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态,并查询信息库中以目标审批数据为审批模板形成的审批单据,将查询到的审批单据的数据状态标记为已删除状态。
接收基于目标账号发起的对已删除审批数据的查询操作;从信息库查询与目标账号关联的且标记为已删除状态的审批数据;响应于查询操作,返回标记为已删除状态的审批数据。
接收针对至少一个已删除审批数据的恢复操作;根据至少一个已删除审批数据的数据标识,从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则执行响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务的步骤。响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务。具体地,创建针对至少一个已删除审批数据的恢复任务;生成恢复任务的任务标识;将任务标识与至少一个已删除审批数据的数据标识关联;初始化恢复任务的任务状态为未完成;将恢复任务与任务状态记录至信息库。在创建了针对至少一个已删除审批数据的恢复任务之后,初始化恢复任务的任务状态;将恢复任务发送至消息队列,通过消息队列根据恢复任务的任务标识,从信息库中查询恢复任务的任务状态。
在审批数据的数据类型为审批模板时,通过消息队列,根据审批模板的模板标识从信息库中检查审批模板的数据状态,在审批模板的数据状态为已删除状态时根据模板标识发起恢复请求;响应于关于审批模板的恢复请求,恢复审批模板后返回恢复应答;通过消息队列,在接收到关于审批模板的恢复应答后,依据恢复应答更新审批模板的数据状态为已恢复,并检查与审批模板关联的审批单据的数据状态,在审批单据的数据状态为已删除状态时根据审批单据的单据标识发起恢复请求;响应于关于审批单据的恢复请求,恢复审批单据后返回恢复应答;通过消息队列,在接收到关于审批单据的恢复应答后,依据恢复应答更新审批单据的数据状态为已恢复,并在与审批模板关联的各审批单据的数据状态均为已恢复时,更新恢复任务的任务状态为完成状态。若是,则根据数据标识发起恢复请求。接收消息队列在恢复任务的任务状态不处于完成状态时,根据恢复任务所针对的至少一个已删除审批数据的数据标识所发起的恢复请求。响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。接收针对恢复任务的查询操作;从信息库中查询关于恢复任务的任务状态;响应于查询操作,返回恢复任务、恢复任务的任务状态以及恢复任务所针对的至少一个审批数据。
在本实施例中,通过接收针对至少一个已删除审批数据的恢复操作;响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起,避免了后续对已恢复审批数据进行重复恢复,确保了数据恢复的效率;响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新恢复任务的任务状态。也即是,在确保了恢复任务所针对的至少一个已删除审批数据是未恢复的情况下,自动完成对已删除审批数据的数据恢复操作,无需人工进行数据恢复,提高了数据恢复的效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据恢复方法的数据恢复装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据恢复装置实施例中的具体限定可以参见上文中对于数据恢复方法的限定,在此不再赘述。
在一个实施例中,如图14所示,提供了一种数据恢复装置1400,包括:接收模块1402、创建模块1404、发送模块1406和恢复模块1408,其中:
接收模块1402,用于接收针对至少一个已删除审批数据的恢复操作;
创建模块1404,用于响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务,并初始化恢复任务的任务状态;
发送模块1406,用于将恢复任务发送至消息队列,接收消息队列针对恢复任务发起的恢复请求,恢复请求在恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
恢复模块1408,用于响应于恢复请求,恢复至少一个已删除审批数据后返回恢复应答,以指示消息队列依据恢复应答更新所述恢复任务的任务状态。
在一个实施例中,装置还包括查询模块,查询模块,用于接收基于目标账号发起的对已删除审批数据的查询操作;从信息库查询与目标账号关联的且标记为已删除状态的审批数据;响应于查询操作,返回标记为已删除状态的审批数据。
在一个实施例中,装置还包括删除模块,删除模块,用于接收基于目标账号发起的对目标审批数据的删除操作;响应于删除操作,将信息库中存储的目标审批数据标记为已删除状态。
在一个实施例中,删除模块,用于当目标审批数据的数据类型为审批单据时,响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态;当目标审批数据的数据类型为审批模板时,响应于删除操作,将信息库中存储的目标审批数据的数据状态标记为已删除状态,并查询信息库中以目标审批数据为审批模板形成的审批单据,将查询到的审批单据的数据状态标记为已删除状态。
在一个实施例中,创建模块1404,还用于根据至少一个已删除审批数据的数据标识,从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则执行响应于恢复操作,创建针对至少一个已删除审批数据的恢复任务的步骤。
在一个实施例中,创建模块1404,用于创建针对至少一个已删除审批数据的恢复任务;生成恢复任务的任务标识;将任务标识与至少一个已删除审批数据的数据标识关联;初始化恢复任务的任务状态为未完成;将恢复任务与任务状态记录至信息库。
在一个实施例中,发送模块1406,用于通过消息队列根据恢复任务的任务标识,从信息库中查询恢复任务的任务状态;接收消息队列在恢复任务的任务状态不处于完成状态时,根据恢复任务所针对的至少一个已删除审批数据的数据标识所发起的恢复请求。
在一个实施例中,装置还包括检查模块,检查模块用于通过消息队列,根据数据标识从信息库中检查数据标识对应的审批数据的数据状态是否标记为已删除状态;若是,则根据数据标识发起恢复请求。
在一个实施例中,审批数据的数据类型为审批模板,检查模块用于通过消息队列,根据审批模板的模板标识从信息库中检查审批模板的数据状态,在审批模板的数据状态为已删除状态时根据模板标识发起恢复请求;响应于关于审批模板的恢复请求,恢复审批模板后返回恢复应答;通过消息队列,在接收到关于审批模板的恢复应答后,依据恢复应答更新审批模板的数据状态为已恢复,并检查与审批模板关联的审批单据的数据状态,在审批单据的数据状态为已删除状态时根据审批单据的单据标识发起恢复请求;响应于关于审批单据的恢复请求,恢复审批单据后返回恢复应答;通过消息队列,在接收到关于审批单据的恢复应答后,依据恢复应答更新审批单据的数据状态为已恢复,并在与审批模板关联的各审批单据的数据状态均为已恢复时,更新恢复任务的任务状态为完成状态。
在一个实施例中,装置还包括返回模块,返回模块用于接收针对恢复任务的查询操作;从信息库中查询关于恢复任务的任务状态;响应于查询操作,返回恢复任务、恢复任务的任务状态以及恢复任务所针对的至少一个审批数据。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据恢复方法的数据恢复装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据恢复装置实施例中的具体限定可以参见上文中对于数据恢复方法的限定,在此不再赘述。
在一个实施例中,如图15所示,提供了另一种数据恢复装置1500,包括:展示模块1502、触发模块1504和显示模块1506,其中:
展示模块1502,用于在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,数据恢复界面中包括已删除审批数据列表,已删除审批数据列表中的各个已删除审批数据通过社交应用的相应业务功能基于目标账号发起后再删除,社交应用包括多个不同的业务功能;
触发模块1504,用于响应于对已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复至少一个已删除审批数据的恢复任务;
显示模块1506,用于响应于对数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,历史恢复记录中包括恢复任务及相应的恢复进度提示信息。
在一个实施例中,触发模块1502,用于响应于对数据恢复界面中数据类型筛选控件的触发操作,显示数据类型为审批模板的已删除审批数据列表;响应于对已删除审批数据列表中目标模板触发的恢复操作,显示通过目标模板创建的审批单据的已删除审批单据列表;响应于对已删除审批单据列表中至少一个已删除审批单据的恢复操作,触发用于恢复目标模板以及至少一个已删除审批单据的恢复任务。
上述两个数据恢复装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,也可以是终端,其内部结构图可以如图16所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现两种数据恢复方法。
本领域技术人员可以理解,图16中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (17)

1.一种数据恢复方法,其特征在于,所述方法包括:
接收针对至少一个已删除审批数据的恢复操作;
响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
2.根据权利要求1所述的方法,其特征在于,所述接收针对至少一个已删除审批数据的恢复操作之前,所述方法还包括:
接收基于目标账号发起的对已删除审批数据的查询操作;
从信息库查询与所述目标账号关联的且标记为已删除状态的审批数据;
响应于所述查询操作,返回所述标记为已删除状态的审批数据。
3.根据权利要求2所述的方法,其特征在于,所述接收基于目标账号发起的对已删除审批数据的查询操作之前,所述方法还包括:
接收基于目标账号发起的对目标审批数据的删除操作;
响应于所述删除操作,将信息库中存储的所述目标审批数据标记为已删除状态。
4.根据权利要求3所述的方法,其特征在于,所述响应于所述删除操作,将信息库中存储的所述目标审批数据标记为已删除状态,包括:
当所述目标审批数据的数据类型为审批单据时,响应于所述删除操作,将信息库中存储的所述目标审批数据的数据状态标记为已删除状态;
当所述目标审批数据的数据类型为审批模板时,响应于所述删除操作,将信息库中存储的所述目标审批数据的数据状态标记为已删除状态,并查询信息库中以所述目标审批数据为审批模板形成的审批单据,将查询到的审批单据的数据状态标记为已删除状态。
5.根据权利要求1所述的方法,其特征在于,所述响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务之前,所述方法还包括:
根据所述至少一个已删除审批数据的数据标识,从信息库中检查所述数据标识对应的审批数据的数据状态是否标记为已删除状态;
若是,则执行所述响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务的步骤。
6.根据权利要求1所述的方法,其特征在于,所述响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态,包括:
创建针对所述至少一个已删除审批数据的恢复任务;
生成所述恢复任务的任务标识;
将所述任务标识与所述至少一个已删除审批数据的数据标识关联;
初始化所述恢复任务的任务状态为未完成;
将所述恢复任务与所述任务状态记录至信息库。
7.根据权利要求1所述的方法,其特征在于,所述接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起,包括:
通过所述消息队列根据所述恢复任务的任务标识,从信息库中查询所述恢复任务的任务状态;
接收所述消息队列在所述恢复任务的任务状态不处于完成状态时,根据所述恢复任务所针对的至少一个已删除审批数据的数据标识所发起的恢复请求。
8.根据权利要求7所述的方法,其特征在于,所述消息队列在根据所述数据标识发起恢复请求之前,所述方法还包括:
通过所述消息队列,根据所述数据标识从信息库中检查所述数据标识对应的审批数据的数据状态是否标记为已删除状态;
若是,则根据所述数据标识发起恢复请求。
9.根据权利要求7所述的方法,其特征在于,所述审批数据的数据类型为审批模板,所述通过所述消息队列,根据所述数据标识从信息库中检查所述数据标识对应的审批数据的数据状态是否标记为已删除状态,包括:
通过所述消息队列,根据所述审批模板的模板标识从信息库中检查所述审批模板的数据状态,在所述审批模板的数据状态为已删除状态时根据所述模板标识发起恢复请求;
响应于关于所述审批模板的恢复请求,恢复所述审批模板后返回恢复应答;
通过所述消息队列,在接收到关于所述审批模板的恢复应答后,依据所述恢复应答更新所述审批模板的数据状态为已恢复,并检查与所述审批模板关联的审批单据的数据状态,在所述审批单据的数据状态为已删除状态时根据所述审批单据的单据标识发起恢复请求;
响应于关于所述审批单据的恢复请求,恢复所述审批单据后返回恢复应答;
通过所述消息队列,在接收到关于所述审批单据的恢复应答后,依据所述恢复应答更新所述审批单据的数据状态为已恢复,并在与所述审批模板关联的各审批单据的数据状态均为已恢复时,更新所述恢复任务的任务状态为完成状态。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述方法还包括:
接收针对所述恢复任务的查询操作;
从信息库中查询关于所述恢复任务的任务状态;
响应于所述查询操作,返回所述恢复任务、所述恢复任务的任务状态以及所述恢复任务所针对的至少一个审批数据。
11.一种数据恢复方法,其特征在于,所述方法包括:
在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
12.根据权利要求11所述的方法,其特征在于,所述响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务,包括:
响应于对所述数据恢复界面中数据类型筛选控件的触发操作,显示数据类型为审批模板的已删除审批数据列表;
响应于对所述已删除审批数据列表中目标模板触发的恢复操作,显示通过所述目标模板创建的审批单据的已删除审批单据列表;
响应于对所述已删除审批单据列表中至少一个已删除审批单据的恢复操作,触发用于恢复所述目标模板以及所述至少一个已删除审批单据的恢复任务。
13.一种数据恢复装置,其特征在于,所述装置包括:
接收模块,用于接收针对至少一个已删除审批数据的恢复操作;
创建模块,用于响应于所述恢复操作,创建针对所述至少一个已删除审批数据的恢复任务,并初始化所述恢复任务的任务状态;
发送模块,用于将所述恢复任务发送至消息队列,接收所述消息队列针对所述恢复任务发起的恢复请求,所述恢复请求在所述恢复任务所针对的至少一个已删除审批数据标记为未完成的情况下发起;
恢复模块,用于响应于所述恢复请求,恢复所述至少一个已删除审批数据后返回恢复应答,以指示所述消息队列依据所述恢复应答更新所述恢复任务的任务状态。
14.一种数据恢复装置,其特征在于,所述装置包括:
展示模块,用于在以目标账号登录的社交应用中,展示关于审批数据的数据恢复界面,所述数据恢复界面中包括已删除审批数据列表,所述已删除审批数据列表中的各个已删除审批数据通过所述社交应用的相应业务功能基于所述目标账号发起后再删除,所述社交应用包括多个不同的业务功能;
触发模块,用于响应于对所述已删除审批数据列表中至少一个已删除审批数据触发的恢复操作,触发用于恢复所述至少一个已删除审批数据的恢复任务;
显示模块,用于响应于对所述数据恢复界面的入口页面中恢复记录的查看操作,显示历史恢复记录,所述历史恢复记录中包括所述恢复任务及相应的恢复进度提示信息。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
CN202211730498.8A 2022-12-30 2022-12-30 数据恢复方法、装置、设备、存储介质和计算机程序产品 Pending CN116974814A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211730498.8A CN116974814A (zh) 2022-12-30 2022-12-30 数据恢复方法、装置、设备、存储介质和计算机程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211730498.8A CN116974814A (zh) 2022-12-30 2022-12-30 数据恢复方法、装置、设备、存储介质和计算机程序产品

Publications (1)

Publication Number Publication Date
CN116974814A true CN116974814A (zh) 2023-10-31

Family

ID=88473727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211730498.8A Pending CN116974814A (zh) 2022-12-30 2022-12-30 数据恢复方法、装置、设备、存储介质和计算机程序产品

Country Status (1)

Country Link
CN (1) CN116974814A (zh)

Similar Documents

Publication Publication Date Title
CN111027295B (zh) 数据处理方法、装置、计算机设备和存储介质
CN113220540B (zh) 业务管理方法、装置、计算机设备和存储介质
US11360966B2 (en) Information processing system and method of controlling information processing system
CN113672350A (zh) 一种应用处理方法、装置及相关设备
CN114238085A (zh) 接口测试方法、装置、计算机设备、存储介质
CN116644250B (zh) 页面检测方法、装置、计算机设备和存储介质
US11243979B1 (en) Asynchronous propagation of database events
CN111753141B (zh) 一种数据管理方法及相关设备
CN116719799A (zh) 环保数据治理方法、装置、计算机设备和存储介质
US20160085638A1 (en) Computer system and method of identifying a failure
CN115658794A (zh) 数据查询方法、装置、计算机设备和存储介质
CN115984022A (zh) 分布式支付系统统一对账方法和装置
CN116974814A (zh) 数据恢复方法、装置、设备、存储介质和计算机程序产品
US11544166B1 (en) Data recovery validation test
CN115168203A (zh) 接口模拟方法、装置、系统、计算机设备和存储介质
CN114116723A (zh) 快照处理方法、装置及电子设备
CN114760314A (zh) 服务器管理方法、装置、计算机设备和存储介质
CN110221952B (zh) 业务数据的处理方法及装置、业务数据处理系统
CN107704557B (zh) 操作互斥数据的处理方法、装置、计算机设备和存储介质
CN111581446B (zh) 一种图关系生成方法、装置、系统、设备及存储介质
CN115017550B (zh) 电子合同数据处理方法、装置、计算机设备及介质
CN115221146B (zh) 一种删除Redis中key值的方法及装置
CN117593125A (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN117785900A (zh) 数据更新方法、装置、计算机设备和存储介质
CN114625568A (zh) 一种区块链备份处理方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication