CN107730210A - 工作流系统中的邮件发送方法、装置和计算机设备 - Google Patents

工作流系统中的邮件发送方法、装置和计算机设备 Download PDF

Info

Publication number
CN107730210A
CN107730210A CN201710999858.7A CN201710999858A CN107730210A CN 107730210 A CN107730210 A CN 107730210A CN 201710999858 A CN201710999858 A CN 201710999858A CN 107730210 A CN107730210 A CN 107730210A
Authority
CN
China
Prior art keywords
mail
sent
node
task status
template
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
CN201710999858.7A
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201710999858.7A priority Critical patent/CN107730210A/zh
Priority to PCT/CN2017/112523 priority patent/WO2019080231A1/zh
Publication of CN107730210A publication Critical patent/CN107730210A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种工作流系统中的邮件发送方法、装置、存储介质和计算机设备。所述方法包括:获取工作流系统中,处于当前节点上的节点任务的任务状态;从预设的多个邮件模板中,获取与所述任务状态相匹配的邮件模板;根据所述节点任务的任务信息和邮件模板生成待发送邮件;将所述待发送邮件发送至与所述任务状态对应的用户终端。上述工作流系统中的邮件发送方法、装置、存储介质和计算机设备,可降低工作流数据在节点中流转的复杂度。

Description

工作流系统中的邮件发送方法、装置和计算机设备
技术领域
本发明涉及信息处理技术领域,特别是涉及一种工作流系统中的邮件发送方法、装置、存储介质和计算机设备。
背景技术
工作流(Workflow)是将一组任务组织起来以完成某个经营过程,是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。工作流定义了任务的触发顺序和触发条件,将每个任务拆分成多个节点任务,每个节点任务可以由一个或多个软件系统完成,也可以由一个或一组人完成,还可以由一个或多个人与软件系统协作完成。工作流解决的主要问题是:为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务。
在工作流系统上处理任务的过程中,通常会需要进行邮件通知相应的任务信息,将任务信息邮件发送给相应的任务处理人或相关人员。传统的在工作流系统上进行邮件提醒的方法,是在工作流系统上设置相应的邮件节点,当任务流转至该邮件节点上时,才生成相应的邮件,向针对该邮件节点所设置的收件人发送相应的邮件,然后再将该任务流转至邮件节点的下一个节点。这种传统的方法,由于必须配置相应的邮件节点,使得工作流系统中的节点数量众多,增加了工作流数据在节点中流转的复杂性。
发明内容
基于此,有必要针对上述技术问题,提供一种工作流系统中的邮件发送方法、装置、存储介质和计算机设备,以降低工作流数据在节点中流转的复杂度。
一种工作流系统中的邮件发送方法,所述方法包括:获取工作流系统中,处于当前节点上的节点任务的任务状态;从预设的多个邮件模板中,获取与所述任务状态相匹配的邮件模板;根据所述节点任务的任务信息和邮件模板生成待发送邮件;将所述待发送邮件发送至与所述任务状态对应的用户终端。
在其中一个实施例中,在所述获取与所述任务状态相匹配的邮件模板之前,还包括:检测对所述任务状态是否配置了邮件模板,若是,则获取与所述任务状态相匹配的邮件模板。
在其中一个实施例中,所述检测对所述任务状态是否配置了邮件模板,包括:查询是否存在与所述任务状态对应的邮件标记;根据是否存在邮件标记判断是否配置了邮件模板。
在其中一个实施例中,所述获取与所述任务状态相匹配的邮件模板,包括:查询适用于处理所述节点任务的用户的用户数量;获取所述任务状态和所述用户数量相匹配的邮件模板。
在其中一个实施例中,所述根据所述节点任务的任务信息和邮件模板生成待发送邮件,包括:获取与待生成邮件关联的历史邮件信息;根据所述节点任务的任务信息、历史邮件信息和邮件模板生成待发送邮件。
在其中一个实施例中,所述根据所述节点任务的任务信息和邮件模板生成待发送邮件,包括:从所述节点任务的任务信息中提取与所述任务状态对应的字段信息,将所述字段信息加载到邮件模板中的邮件标题和/或邮件正文中;根据所述节点任务和所述状态信息确定对应的收件人信息;根据所述邮件标题、邮件正文和收件人信息生成待发送邮件。
在其中一个实施例中,在所述将所述待发送邮件发送至与所述任务状态对应的用户终端之前,还包括:展示所述待发送邮件;接收对所述待发送邮件的修改信息,根据该修改信息对所述待发送邮件进行修改;所述将所述待发送邮件发送至与所述任务状态对应的用户终端,包括:将修改后的待发送邮件发送至与所述任务状态对应的用户终端。
一种工作流系统中的邮件发送装置,所述装置包括:任务信息获取模块,用于获取工作流系统中,处于当前节点上的节点任务的任务状态;邮件模板获取模块,用于从预设的多个邮件模板中,获取与所述任务状态相匹配的邮件模板;邮件生成模块,用于根据所述节点任务的任务信息和邮件模板生成待发送邮件;邮件发送模块,用于将所述待发送邮件发送至与所述任务状态对应的用户终端。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中任一项所述方法的步骤。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中任一项所述方法的步骤。
上述的工作流系统中的邮件发送方法、装置、存储介质和计算机设备,通过获取工作流系统中,处于当前节点上的节点任务的任务状态;从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板;根据节点任务的任务信息和邮件模板生成待发送邮件;将待发送邮件发送至与任务状态对应的用户终端,使得可针对每个节点中的任务状态来生成对应节点任务的邮件,避免了在工作流数据中专门配置相应的节点邮件,从而可降低工作流系统中的节点数量,降低工作流数据在节点中流转的复杂度。
附图说明
图1为一个实施例中工作流系统中的邮件发送方法的应用环境图;
图2为一个实施例中工作流系统中的邮件发送方法的流程图;
图3为一个实施例中根据所述节点任务的任务信息和邮件模板生成待发送邮件的流程图;
图4为另一个实施例中工作流系统中的邮件发送方法的流程图;
图5为一个实施例中工作流系统中的邮件发送装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例所提供的工作流系统中的邮件发送方法,可应用于如图1所示的应用环境中。参考图1所示,计算机设备110可通过网络与用户终端120相连。计算机设备120上配置了BPM(Business Process Management,业务流程管理)系统,并存储了多份工作流数据,记录了每份工作流数据所处的节点,以及在对应节点上的节点任务的任务状态、对应的处理用户等信息。计算机设备120可获取每个工作流系统中,工作流数据所处当前节点上的任务状态,并从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板;根据节点任务的任务信息和邮件模板生成待发送邮件;将待发送邮件发送至与任务状态对应的用户终端120。
在一个实施例中,如图2所示,提供了一种工作流系统中的邮件发送方法,其特征在于,方法包括:
步骤S202,获取工作流系统中,处于当前节点上的节点任务的任务状态。
本实施例中,工作流系统为用于对工作流上的工作流数据进行处理的系统。该系统可为用于对整个工作流数据进行工作流数据的查询、管理以及审批等处理的BPM(Business Process Management,业务流程管理)系统,还可为与该BPM系统有关联的、负责处理工作流中的部分节点上的节点任务的其它关联系统。
一份工作流数据可为在工作流系统中的一项任务。工作流系统中设置了多个节点,以及每个节点之间的逻辑关系,不同节点对应了一项任务所处的不同阶段,一份工作流数据在各节点上的处理用户可相同或不同。工作流数据被流转到某一节点上时,可生成对应节点的节点任务。即为相应工作流数据所流转到的待处理的节点,当前节点上的任务信息为对应工作流数据在当前节点上时,所需处理的相关任务数据。
任务状态表示处于对应节点上的节点任务的当前状态,不同节点上包含的任务状态不同。举例来说,存在某一节点A和节点B,节点A和节点B上的节点任务的任务状态均可包括待分配状态、分配中状态、处理中状态、处理完毕状态等其中的一种或多种。显然地,由于工作流数据处于节点A和节点B上是两种不同的阶段,因而处在节点A上的待分配状态和节点B上的待分配状态也是两种不同的状态,对应的任务信息也不一定相同。
计算机设备可在检测到一份工作流数据所处的节点产生变动时,获取变动后的节点上的节点任务的任务状态,或者节点任务的任务状态产生变动时,可该获取该节点任务变动后的任务状态。其中,变动后的节点即为当前节点。
步骤S204,从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板。
本实施例中,计算机设备预设了当前节点上的节点任务,在不同任务状态下对应的邮件模板。计算机设备可从预设的多个邮件模板中,查询与该任务状态相匹配的邮件模板,并获取该邮件模板。与任务状态相匹配的邮件模板表示适用于处理流转至当前节点上工作流数据所产生的节点任务,处于该任务状态下的邮件模板。其中,不同的节点和/或不同的任务状态对应的邮件模板不一定相同。邮件模板中可包含邮件标题模板、邮件正文模板以及收件人信息等其中的一种或多种。
在一个实施例中,计算机设备针对每个邮件模板设置了用于唯一标识该邮件模板的模板标识,并根据管理员用户的操作,将一个或多个节点下的部分或全部不同的任务状态,分别与相匹配的邮件模板的模板标识建立对应关系。计算机设备可根据该任务状态与对应模板标识之间建立的对应关系,获取相应模板标识所标识的邮件模板。
在一个实施例中,在步骤S204之前,还包括:检测对任务状态是否配置了邮件模板,若是,则执行步骤S204。
本实施例中,并非所有的节点和/或所有的任务状态都需要设置对应的邮件。计算机设备可检测该任务状态是否配置了邮件模板。可选地,查询是否存在与任务状态对应的邮件标记;根据是否存在邮件标记判断是否配置了邮件模板。若是,则表示该任务状态配置了邮件模板。其中,该邮件标记表示对相应的任务状态配置了对应的邮件模板。计算机设备可设置用于表示对应任务状态是否配置了模板邮件的字段,对该字段设置分别表示存在或不存在对应邮件模板的信息,比如可设置“是”、yes”或者“0”等字段值表示存在对应邮件模板的信息,设置“否”、“no”或者“1”等字段值分别表示存在或不存在对应邮件模板的信息。其中,当该字段值为表示存在邮件模板的字段值时,即表示存在邮件标记。在一个实施例中,计算机设备可接收对该任务状态下的邮件模板的编辑信息,检测该编辑信息对应的编辑用户是否具有编辑权限,若是,则根据编辑信息对邮件模板进行编辑,将编辑后的邮件模板与该任务状态进行关联。其中,该编辑信息可为对邮件模板的修改信息和/或创建信息等。
步骤S206,根据节点任务的任务信息和邮件模板生成待发送邮件。
本实施例中,计算机设备可获取工作流数据处于当前节点上的任务信息,并从该任务信息中提取与该任务状态相关的字段信息或任务文件,将该字段信息和/或任务文件加载至邮件模板中,生成待发送的邮件。其中,该相关的字段信息可包括任务的名称、任务时限、任务简介等其中的一种或多种。
步骤S208,将待发送邮件发送至与任务状态对应的用户终端。
本实施例中,该用户终端可为待发送邮件中的收件人对应的终端。计算机设备预设了与该任务状态对应的一个或多个收件人的信息。计算机设备可检测待发送邮件中是否包含收件人,若是,则可将待生成邮件发送至该收件人对应的用户终端。否则,计算机设备可查询与该任务状态对应的一个或多个收件人的信息,获取查询到的收件人的邮箱,将待生成邮件发送至查询到的收件人邮箱,从而实现将待发送邮件发送至该接收用户的用户终端。
上述工作流系统中的邮件发送方法,通过获取工作流系统中,处于当前节点上的节点任务的任务状态;从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板;根据节点任务的任务信息和邮件模板生成待发送邮件;将待发送邮件发送至与任务状态对应的用户终端,使得可针对每个节点中的任务状态来生成对应节点任务的邮件,避免了在工作流数据中专门配置相应的节点邮件,从而可降低工作流系统中的节点数量,降低工作流数据在节点中流转的复杂度。
在一个实施例中,步骤S204包括:查询与任务状态对应的所有邮件模板;从查询出的邮件模板中,获取与节点任务的任务类型相匹配的邮件模板。
本实施例中,处于相同节点上的节点任务的任务类型不一定相同。工作流系统中可适用于处理多种类型的工作流数据,不同类型的工作流数据,在被处理过程中,可能流转至一个或者多个相同的节点。节点任务的任务类型为工作流数据所属的任务类型。即不同类型的工作流数据,流转至相同的节点时,对应节点任务的任务类型也不相同。计算机设备还进一步设置了不同任务类型与不同的邮件模板的对应关系,并建立了不同任务类型与邮件模板的模板标识之间的对应关系。
计算机设备可首先查询与该任务状态对应的所有模板标识,从所查询的出的模板标识中,进一步查询与任务类型相匹配的模板标识,并获取该模板标识对应的邮件模板。
举例来说,工作流系统中可适用于处理保险类的工作流数据,其系统中的工作流数据的类型包括养老险类型和分红险类型。工作流系统中存在工作流数据A和工作流数据B分别属于养老险类型和分红类型,该两份工作流数据分别流转至当前节点上,生成的对应节点任务A和节点任务B均处于相同待分配的任务状态。则计算机设备可首先查询与当前节点上,待分配状态对应的所有模板标识,并可从查询出的模板标识中,获取与养老险类型对应的模板标识A,获取模板标识A对应的模板邮件A,作为用于生成节点任务A的待发送邮件;并获取与分红险类型对应的模板标识B,获取模板标识B对应的模板邮件B,作为用于生成节点任务B的待发送邮件。
本实施例中,通过进一步设置节点任务的任务类型,并获取与节点任务的任务类型相匹配的邮件模板,作为用于生成该节点任务的待发送邮件。使得可提高工作流数据中,对不同类型的工作流数据进行处理的通用性。
在一个实施例中,步骤S204包括:根据节点任务的任务信息和邮件模板生成待发送邮件,包括:查询适用于处理节点任务的用户的用户数量;获取任务状态和用户数量相匹配的邮件模板。
本实施例中,针对每个节点上的节点任务,计算机设备还预设了处于不同任务状态下来处理该节点任务的用户,该用户可包括一个或多个。适用于处理节点任务的用户的用户数量不同,则对应的邮件模板也不一定相同。计算机设备还设置了不同用户数量对应的模板标识。计算机设备可查询适用于处理节点任务的用户的用户数量,并查询适与该任务状态对应的所有模板标识,在查询出的模板标识中,确定适用于处理节点任务的用户的用户数量对应的模板标识,并获取该模板标识对应的模板邮件。在一个实施例中,该适用于处理节点任务的用户,可进一步根据该任务状态划分为适用于处理该节点任务,在不同任务状态下的用户。比如,对于处于同一节点下的节点任务,该节点任务在处于待分配状态下的用户为用户A和用户B,处于审核状态下对应的用户为用户N。
本实施例中,通过进一步考虑适用于处理节点任务的用户的用户数量,可进一步选取邮件模板的灵活性。
在一个实施例中,步骤S206包括:获取与待生成邮件关联的历史邮件信息;根据节点任务的任务信息、历史邮件信息和邮件模板生成待发送邮件。
本实施例中,计算机设备可进一步查询与待生成邮件关联的历史邮件信息,历史邮件信息包含通过该工作流数据所生成的历史邮件,包含工作流数据流转至当前节点以及当前节点之前的节点上,对应的节点任务产生的历史邮件
在一个实施例中,与待生成邮件关联的历史邮件信息,可包括处于当前节点上的节点任务产生的历史邮件,和/或包括当前节点的上游节点上的节点任务产生的历史邮件,和/或根据该工作流数据所产生的最近的一份历史邮件。计算机设备可获取该历史邮件信息,将该历史邮件信息加载到邮件模板中的正文中,根据该任务信息和邮件模板生成待发送邮件。
其中,相对于某一节点来说,位于其相邻的、在前的节点即为相对于该节点的上游节点,位于其相邻的、在后的节点即为相对于该节点的下游节点。对应的,相对于该上游节点而言,上述的某一节点即为该上游节点的下游节点。
在一个实施例中,计算机设备可检测对当前节点或任务状态或邮件模板中的任意一种或多种,是否设置了需要加载历史邮件。若针对当前节点或任务状态设置了需要加载历史邮件,则可从历史邮件信息中选取最近生成一份历史邮件,加载至邮件模板中的对应位置处。若在邮件模板中标记了需要携带历史邮件信息,也可从历史邮件信息中选取最近生成一份历史邮件,加载至邮件模板中的对应位置处,比如加载至模板邮件的正文模板中。
本实施例中,通过进一步获取历史邮件信息,可提高生成的邮件中携带的信息的丰富性,使邮件接收者可获取更多的信息,从而可提高对该节点任务的处理效率。
在一个实施例中,如图3所示,步骤S206包括:
步骤S302,从节点任务的任务信息中提取与任务状态对应的字段信息,将字段信息加载到邮件模板中的邮件标题和/或邮件正文中。
本实施例中,邮件模板中设置了用于填充任务信息中的相关字段信息,该需要填充的信息可位于邮件模板中的邮件标题和/或邮件正文中。计算机设备可针对获取的邮件模板,检测该模板的邮件标题和/或邮件正文的模板信息中,需要填充的字段信息的属性,并从该任务信息中提取对应属性相同的字段信息,将提取的字段信息填充至对应需要填充字段的位置处。
其中,需要填充的字段信息可包括任务的名称、任务时限、任务简介、处理该任务的用户信息等其中的一种或多种。
步骤S304,根据节点任务和状态信息确定对应的收件人信息。
本实施例中,计算机设备可查询与该状态信息对应的用户标识,获取每个查询出的用户标识对应的收件人信息。在一个实施例中,可进一步检测该节点任务所属的任务类型,从查询出的用户标识中筛选出与该任务类型对应的用户标识,获取筛选出的用户标识对应的收件人信息。其中,该收件人信息可为预设的该用户的邮箱。
步骤S306,根据邮件标题、邮件正文和收件人信息生成待发送邮件。
本实施例中,计算机设备可根据填充玩所需填充信息后的邮件标题和邮件正文,以及确定的收件人信息,生成待发送邮件。
通过从节点任务的任务信息中提取与任务状态对应的字段信息,将字段信息加载到邮件模板中的邮件标题和/或邮件正文,并根据节点任务和任务状态来确定收件人,可提高邮件生成的效率。
在一个实施例中,在步骤S208之前,上述方法还包括:展示待发送邮件;接收对待发送邮件的修改信息,根据该修改信息对待发送邮件进行修改。步骤S208包括:将修改后的待发送邮件发送至与任务状态对应的用户终端。
本实施例中,计算机设备还可在发送该邮件之前,展示所生成的待发送邮件,以供用户修改确认。计算机设备可接收对展示的邮件信息的修改信息,根据该修改信息对该邮件进行修改。进一步地,计算机设备可对生成的邮件中的关键信息采取高亮或者其他引起注意的形式来显示,以使得用户可检测该邮件中包含的关联信息是否正确。该关键信息可为加载至邮件模板中的全部或部分字段信息。
计算机设备可接收对修改后的邮件的发送指令,根据该发送指令将修改后的邮件发送至用户终端。
本实施例中,通过进行对待发送邮件的展示,可使得邮件发送者对待发送邮件进行修改和确认,提高了邮件携带的信息的准确性。
在一个实施例中,如图4所示,提供了另一种工作流系统中的邮件发送方法,该方法包括:
步骤S402,获取工作流系统中,处于当前节点上的节点任务的任务状态。
本实施例中,计算机设备可获取对工作流数据所产生的节点任务的处理结果,根据该处理结果确定是将该工作流数据流转至下一节点,还是更改在该节点上的节点任务的任务状态。其中,当流转至下一节点时,该下一节点即为当前节点,若保持在同一节点上时,则该节点即为当前节点。
举例来说,若存在节点A,处于节点A上的节点任务A的任务状态包含待分配状态、待处理状态、处理完成状态。计算机设备可接收当对该节点任务A的处理结果,当根据该处理结果确定该节点任务A的状态为待处理状态时,可获取该节点任务A的待处理状态;当根据该节点任务A的处理结果,确定对应工作流数据被流转至节点B时,则产生节点B的节点任务B,并获取该节点任务B的节点状态。其中,该节点B即为当前节点,节点A即为节点B的上游节点。
步骤S404,当对该任务状态配置了邮件模板时,从预设的多个邮件模板中,查询与任务状态对应的所有邮件模板。
本实施例中,计算机设备可检测节点任务所处的当前任务状态是否被设置了邮件标记,若是,则判定对该任务状态配置了邮件模板。任务状态可配置多个邮件模板,计算机设备可预先将该配置的所有邮件模板的邮件标识与该任务状态之间建立对应关系,通过该对应关系,查询到与该任务状态对应的所有模板标识。
步骤S406,查询适用于处理节点任务的用户的用户数量。
本实施例中,计算机设备还预设了用于处理处于当前任务状态的节点任务的用户,该用户可包括一个或多个。且节点任务的不同任务类型对应的用户也不一定相同,任务类型可根据工作流数据所确定。针对每种任务类型,计算机预先建立了该任务状态与合适用户的用户标识之间的对应关系。通过该任务类型和对应关系,可查询出适用于处理该节点任务的用户标识,计算查询出的所有用户标识的数量。
步骤S408,从查询出的邮件模板中,获取与节点任务的任务类型和用户数量相匹配的邮件模板。
本实施例中,计算机设备可根据查询出的邮件模板中,选取与该任务类型和用户数量相匹配的邮件模板。
举例来说,当任务状态为待分配状态、且对应的用户数量为一个时,可获取与用户标识的数量为一个的状态下,与任务状态和用户数量相匹配的邮件模板。其中该邮件模板可为表示将节点任务分配至该一个用户进行处理的邮件模板。而当用户数量为多个时,则获取的邮件模板可为表示有该多个用户自行选择是否接受处理该节点任务的邮件模板。
步骤S410,根据节点任务的任务信息和邮件模板生成待发送邮件。
本实施例中,计算机设备可从节点任务的任务信息中提取与任务状态对应的字段信息,将字段信息加载到邮件模板中的邮件标题和/或邮件正文中;根据节点任务和状态信息确定对应的收件人信息;根据邮件标题、邮件正文和收件人信息生成待发送邮件。
在一个实施例中,计算机设备还可查询邮件模板中是否配置了需要加载任务文件,若是,则可获取与该节点任务处于当前的任务状态关联的任务文件,将该任务文件加载至邮件模板中,作为待发送邮件的附件信息。
举例来说,获取的邮件模板中的邮件正文包含的信息为:“XX产品XX帐户开户资料准备人员为XX,有问题请及时联系。”,里面的“XX产品”可根据任务信息中的产品名称来确定。
在一个实施例中,计算机设备还可统计与该节点任务关联的历史邮件的邮件数量,并将该邮件数量信息也加载至邮件模板中,比如可加载在邮件的标题上,使生成的待发送邮件中,携带针对该节点任务所发送的邮件的次数信息。
步骤S412,将待发送邮件发送至与任务状态对应的用户终端。
本实施例中,该用户终端可为查询出的用户标识对应的用户终端。同样地,用户终端也可包括一个或多个。
上述工作流系统中的邮件发送方法,通过设置节点任务的任务类型,并设置不同的任务类型以及用户数量对应的邮件模板,使得生成的邮件所携带的信息更加丰富,也提高了整个工作流中对节点任务的处理效率。
在一个实施例中,步骤S406包括:获取与任务状态相匹配的用户调度信息,查询用户调度信息中每个可分配用户的用户数量,该用户数量即为适用于处理节点任务的用户的用户数量。
本实施例中,用户调度信息是指反映多个用户的任务分配状况的信息,该用户为适用于处理处于当前任务状态的节点任务的用户。该用户调度信息中包含了多个用户的任务分配信息,如包括每个用户的用户信息以及对应用户的任务分配数量、每个分配任务的任务状态以及任务信息等其中的一种或多种。用户信息包含用户的姓名、联系方式等,还包含用于唯一标识用户信息的用户标识。不同的用户调度信息中包含的用户标识不同,相同的用户调度信息在不同周期下包含的用户标识也不一定相同。
在一个实施例中,可预先提取处于相同的部门、团队,和/或被设置处理的任务类型的用户的用户标识,根据提取的用户标识对应的用户信息以及任务分配信息生成对应的用户调度信息。与任务信息相匹配的用户调度信息中包含表示适用于处理该待分配任务的用户信息。
计算机设备预先记录了每个用户的工作时间安排信息,根据该工作时间安排信息设置了对应用户在不同时间下是否可被分配。计算机设备可检测每个工作时间安排信息中是否包含当前系统时间,若是,则判定该工作时间安排信息对应的用户为可分配用户。
在一个实施例中,计算机设备根据工作时间安排信息,将处于对应工作时间安排信息的用户标识设置了可分配标记,处于对应非工作时间安排信息的用户标识,则取消可分配标记。计算机设备可根据当前系统时间和每个用户的工作时间安排信息,实时调整对应用户标识是否被设置可分配标记。
计算机设备可检测用户调度信息中,每个用户标识是否设置了可分配标记,若是,则判定对应用户为可分配用户,并统计可分配用户的用户数量。比如,存在某一用户A的工作时间安排信息仅为每周一或每周三进行工作。则在当前系统时间处于周一或周三时,对该用户A的用户标识A设置可分配标记,当处于周二时,则取消对用户标识A设置的可分配标记。通过检测用户调度信息中,每个用户标识是否设置了可分配标记,识别对应用户是否为可分配用户。
通过进一步考虑用户是否为可分配用户,可进一步提高了对模板邮件选择的灵活性。
在一个实施例中,如图5所示,提供了一种工作流系统中的邮件发送装置,该装置包括:
任务信息获取模块502,用于获取工作流系统中,处于当前节点上的节点任务的任务状态。
邮件模板获取模块504,用于从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板。
邮件生成模块506,用于根据节点任务的任务信息和邮件模板生成待发送邮件。
邮件发送模块508,用于将待发送邮件发送至与任务状态对应的用户终端。
在一个实施例中,邮件模板获取模块504还用于检测对任务状态是否配置了邮件模板,若是,则获取与任务状态相匹配的邮件模板。
在一个实施例中,邮件模板获取模块504还用于查询是否存在与任务状态对应的邮件标记;根据是否存在邮件标记判断是否配置了邮件模板。
在一个实施例中,邮件模板获取模块504还用于查询与任务状态对应的所有邮件模板;从查询出的邮件模板中,获取与节点任务的任务类型相匹配的邮件模板。
在一个实施例中,邮件模板获取模块504还用于查询适用于处理节点任务的用户的用户数量;获取任务状态和用户数量相匹配的邮件模板。
在一个实施例中,邮件生成模块506还用于获取与待生成邮件关联的历史邮件信息;根据节点任务的任务信息、历史邮件信息和邮件模板生成待发送邮件。
在一个实施例中,邮件生成模块506还用于从节点任务的任务信息中提取与任务状态对应的字段信息,将字段信息加载到邮件模板中的邮件标题和/或邮件正文中;根据节点任务和状态信息确定对应的收件人信息;根据邮件标题、邮件正文和收件人信息生成待发送邮件。
在一个实施例中,邮件生成模块506还用于展示待发送邮件;接收对待发送邮件的修改信息,根据该修改信息对待发送邮件进行修改。
邮件发送模块508还用于将修改后的待发送邮件发送至与任务状态对应的用户终端。
上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。该处理器可以为中央处理单元(CPU)、微处理器、单片机等。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中任一项工作流系统中的邮件发送方法的步骤。
在一个实施例中,该计算机程序被处理器执行时实现以下步骤:获取工作流系统中,处于当前节点上的节点任务的任务状态;从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板;根据节点任务的任务信息和邮件模板生成待发送邮件;将待发送邮件发送至与任务状态对应的用户终端。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:检测对任务状态是否配置了邮件模板,若是,则获取与任务状态相匹配的邮件模板。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:查询是否存在与任务状态对应的邮件标记;根据是否存在邮件标记判断是否配置了邮件模板。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:查询与任务状态对应的所有邮件模板;从查询出的邮件模板中,获取与节点任务的任务类型相匹配的邮件模板。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:查询适用于处理节点任务的用户的用户数量;获取任务状态和用户数量相匹配的邮件模板。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:获取与待生成邮件关联的历史邮件信息;根据节点任务的任务信息、历史邮件信息和邮件模板生成待发送邮件。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:从节点任务的任务信息中提取与任务状态对应的字段信息,将字段信息加载到邮件模板中的邮件标题和/或邮件正文中;根据节点任务和状态信息确定对应的收件人信息;根据邮件标题、邮件正文和收件人信息生成待发送邮件。
在一个实施例中,该计算机程序被处理器执行时还实现以下步骤:展示待发送邮件;接收对待发送邮件的修改信息,根据该修改信息对待发送邮件进行修改;将修改后的待发送邮件发送至与任务状态对应的用户终端。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中任一项工作流系统中的邮件发送方法的步骤。
在一个实施例中,该计算机设备可为服务器或者终端等其中的任意一种。终端包括但不限于手机、平板电脑、便携式笔记本或智能穿戴设备等。如图6所示,为一个实施例中计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。存储器用于存储数据、指令代码等,存储器上存储至少一个计算机程序,该计算机程序可被处理器执行,以实现本申请实施例中提供的适用于计算机设备的工作流系统中的邮件发送方法。存储器可包括磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质等。例如,在一个实施例中,存储器包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统、数据库和计算机程序。该数据库中存储有用于实现以上各个实施例所提供的一种工作流系统中的邮件发送方法相关的数据,比如可存储相应的用户信息和工作流数据、节点任务的任务信息等。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种工作流系统中的邮件发送方法。计算机设备中的内存储器为非易失性存储介质中的操作系统、数据库和计算机程序提供高速缓存的运行环境。网络接口可以是以太网卡或无线网卡等,用于与外部的终端或服务器进行通信。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。比如该计算机设备还可包括显示屏,该显示屏可用于显示相应的任务分配信息和/或授权信息等。显示屏可以是触摸屏,比如为电容屏或电子屏,可通过接收作用于该触摸屏上显示的控件的点击操作,生成相应的指令。
在一个实施例中,该处理器执行计算机程序时实现以下步骤:获取工作流系统中,处于当前节点上的节点任务的任务状态;从预设的多个邮件模板中,获取与任务状态相匹配的邮件模板;根据节点任务的任务信息和邮件模板生成待发送邮件;将待发送邮件发送至与任务状态对应的用户终端。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:检测对任务状态是否配置了邮件模板,若是,则获取与任务状态相匹配的邮件模板。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:查询是否存在与任务状态对应的邮件标记;根据是否存在邮件标记判断是否配置了邮件模板。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:查询与任务状态对应的所有邮件模板;从查询出的邮件模板中,获取与节点任务的任务类型相匹配的邮件模板。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:查询适用于处理节点任务的用户的用户数量;获取任务状态和用户数量相匹配的邮件模板。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:获取与待生成邮件关联的历史邮件信息;根据节点任务的任务信息、历史邮件信息和邮件模板生成待发送邮件。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:从节点任务的任务信息中提取与任务状态对应的字段信息,将字段信息加载到邮件模板中的邮件标题和/或邮件正文中;根据节点任务和状态信息确定对应的收件人信息;根据邮件标题、邮件正文和收件人信息生成待发送邮件。
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:展示待发送邮件;接收对待发送邮件的修改信息,根据该修改信息对待发送邮件进行修改;将修改后的待发送邮件发送至与任务状态对应的用户终端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序可存储在存储器上,比如存储于一非易失性计算机可读取存储介质中。该程序被执行时,可实现包括如上述各方法的实施例的流程。
本发明所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。
上述各实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
上述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种工作流系统中的邮件发送方法,其特征在于,所述方法包括:
获取工作流系统中,处于当前节点上的节点任务的任务状态;
从预设的多个邮件模板中,获取与所述任务状态相匹配的邮件模板;
根据所述节点任务的任务信息和邮件模板生成待发送邮件;
将所述待发送邮件发送至与所述任务状态对应的用户终端。
2.根据权利要求1所述的方法,其特征在于,在所述获取与所述任务状态相匹配的邮件模板之前,还包括:
检测对所述任务状态是否配置了邮件模板,若是,则获取与所述任务状态相匹配的邮件模板。
3.根据权利要求2所述的方法,其特征在于,所述检测对所述任务状态是否配置了邮件模板,包括:
查询是否存在与所述任务状态对应的邮件标记;
根据是否存在邮件标记判断是否配置了邮件模板。
4.根据权利要求1所述的方法,其特征在于,所述获取与所述任务状态相匹配的邮件模板,包括:
查询适用于处理所述节点任务的用户的用户数量;
获取所述任务状态和所述用户数量相匹配的邮件模板。
5.根据权利要求1所述的方法,其特征在于,所述根据所述节点任务的任务信息和邮件模板生成待发送邮件,包括:
获取与待生成邮件关联的历史邮件信息;
根据所述节点任务的任务信息、历史邮件信息和邮件模板生成待发送邮件。
6.根据权利要求1所述的方法,其特征在于,所述根据所述节点任务的任务信息和邮件模板生成待发送邮件,包括:
从所述节点任务的任务信息中提取与所述任务状态对应的字段信息,将所述字段信息加载到邮件模板中的邮件标题和/或邮件正文中;
根据所述节点任务和所述状态信息确定对应的收件人信息;
根据所述邮件标题、邮件正文和收件人信息生成待发送邮件。
7.根据权利要求1所述的方法,其特征在于,在所述将所述待发送邮件发送至与所述任务状态对应的用户终端之前,还包括:
展示所述待发送邮件;
接收对所述待发送邮件的修改信息,根据该修改信息对所述待发送邮件进行修改;
所述将所述待发送邮件发送至与所述任务状态对应的用户终端,包括:
将修改后的待发送邮件发送至与所述任务状态对应的用户终端。
8.一种工作流系统中的邮件发送装置,其特征在于,所述装置包括:
任务信息获取模块,用于获取工作流系统中,处于当前节点上的节点任务的任务状态;
邮件模板获取模块,用于从预设的多个邮件模板中,获取与所述任务状态相匹配的邮件模板;
邮件生成模块,用于根据所述节点任务的任务信息和邮件模板生成待发送邮件;
邮件发送模块,用于将所述待发送邮件发送至与所述任务状态对应的用户终端。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
CN201710999858.7A 2017-10-24 2017-10-24 工作流系统中的邮件发送方法、装置和计算机设备 Pending CN107730210A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710999858.7A CN107730210A (zh) 2017-10-24 2017-10-24 工作流系统中的邮件发送方法、装置和计算机设备
PCT/CN2017/112523 WO2019080231A1 (zh) 2017-10-24 2017-11-23 工作流系统中的邮件发送方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710999858.7A CN107730210A (zh) 2017-10-24 2017-10-24 工作流系统中的邮件发送方法、装置和计算机设备

Publications (1)

Publication Number Publication Date
CN107730210A true CN107730210A (zh) 2018-02-23

Family

ID=61213421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710999858.7A Pending CN107730210A (zh) 2017-10-24 2017-10-24 工作流系统中的邮件发送方法、装置和计算机设备

Country Status (2)

Country Link
CN (1) CN107730210A (zh)
WO (1) WO2019080231A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109447472A (zh) * 2018-10-30 2019-03-08 平安科技(深圳)有限公司 绩效任务数据处理方法、装置、计算机设备及存储介质
CN109816218A (zh) * 2019-01-04 2019-05-28 深圳壹账通智能科技有限公司 企业运营管理方法、装置、计算机设备和存储介质
CN110351182A (zh) * 2019-05-31 2019-10-18 平安科技(深圳)有限公司 邮件发送方法、装置、设备及计算机可读存储介质
WO2019227719A1 (zh) * 2018-05-29 2019-12-05 平安科技(深圳)有限公司 邮件配置方法、装置、计算机设备及存储介质
CN111641547A (zh) * 2020-04-27 2020-09-08 完美世界控股集团有限公司 邮件的处理方法及客户端、服务端、系统
CN115037715A (zh) * 2022-06-22 2022-09-09 中国平安财产保险股份有限公司 基于邮件归档的任务流转方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101271547A (zh) * 2007-03-19 2008-09-24 株式会社理光 工作流程管理系统
CN101310233A (zh) * 2005-08-09 2008-11-19 甲骨文系统公司 通用的基于工作流的路由
CN105160467A (zh) * 2015-08-26 2015-12-16 长安马自达汽车有限公司 工程变更控制管理系统及其方法
CN106933862A (zh) * 2015-12-30 2017-07-07 北京神州泰岳软件股份有限公司 一种生成邮件报告的方法和装置
CN107122955A (zh) * 2017-04-27 2017-09-01 北京中云微迅信息技术有限公司 工作流程审批方法和系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577973B (zh) * 2013-11-01 2019-07-16 金蝶软件(中国)有限公司 工作流任务的处理方法及装置
US20160234139A1 (en) * 2015-02-09 2016-08-11 Angela Christine Botner Classification Based Email Construction, Work Flow, and Dashboard Rendering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101310233A (zh) * 2005-08-09 2008-11-19 甲骨文系统公司 通用的基于工作流的路由
CN101271547A (zh) * 2007-03-19 2008-09-24 株式会社理光 工作流程管理系统
CN105160467A (zh) * 2015-08-26 2015-12-16 长安马自达汽车有限公司 工程变更控制管理系统及其方法
CN106933862A (zh) * 2015-12-30 2017-07-07 北京神州泰岳软件股份有限公司 一种生成邮件报告的方法和装置
CN107122955A (zh) * 2017-04-27 2017-09-01 北京中云微迅信息技术有限公司 工作流程审批方法和系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019227719A1 (zh) * 2018-05-29 2019-12-05 平安科技(深圳)有限公司 邮件配置方法、装置、计算机设备及存储介质
CN109447472A (zh) * 2018-10-30 2019-03-08 平安科技(深圳)有限公司 绩效任务数据处理方法、装置、计算机设备及存储介质
CN109447472B (zh) * 2018-10-30 2023-11-28 平安科技(深圳)有限公司 绩效任务数据处理方法、装置、计算机设备及存储介质
CN109816218A (zh) * 2019-01-04 2019-05-28 深圳壹账通智能科技有限公司 企业运营管理方法、装置、计算机设备和存储介质
CN110351182A (zh) * 2019-05-31 2019-10-18 平安科技(深圳)有限公司 邮件发送方法、装置、设备及计算机可读存储介质
CN110351182B (zh) * 2019-05-31 2022-06-17 平安科技(深圳)有限公司 邮件发送方法、装置、设备及计算机可读存储介质
CN111641547A (zh) * 2020-04-27 2020-09-08 完美世界控股集团有限公司 邮件的处理方法及客户端、服务端、系统
CN115037715A (zh) * 2022-06-22 2022-09-09 中国平安财产保险股份有限公司 基于邮件归档的任务流转方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
WO2019080231A1 (zh) 2019-05-02

Similar Documents

Publication Publication Date Title
CN107730210A (zh) 工作流系统中的邮件发送方法、装置和计算机设备
US9749267B2 (en) Intelligent automated messaging for computer-implemented devices
CN107909330A (zh) 工作流数据处理方法、装置、存储介质和计算机设备
CN107730077A (zh) 节点任务数据显示方法、装置、存储介质和计算机设备
CN104081375A (zh) 基于社交网络信息的电子邮件过滤
CN104461239B (zh) 一种信息交互方法和装置
CN105187365A (zh) 基于角色和数据项的访问控制方法及装置
CN111107504B (zh) 基于大数据的电商客户关怀短信推送方法
US9697501B2 (en) Interruptibility management via scheduling application
CN107908657A (zh) 业务报表的查询方法、装置、计算机设备及存储介质
CN104468328A (zh) 一种信息接入处理方法和装置
CN109447472A (zh) 绩效任务数据处理方法、装置、计算机设备及存储介质
JP2009163497A (ja) 事務フロー生成装置およびその方法
CN107402910A (zh) 基于表单的数据管理方法、设备及计算机可读存储介质
WO2017065986A1 (en) Identifying search results from local and remote search of communications in parallel
CN110414865A (zh) 一种审核任务的分配方法、装置、计算机设备和存储介质
CN109523228A (zh) 一种工作报告管理方法、终端设备及计算机可读存储介质
CN111641547B (zh) 邮件的处理方法及客户端、服务端、系统
JP2019144978A (ja) 情報処理装置、情報処理方法、およびプログラム
CN106056331A (zh) 商品库存的预警方法及预警系统
CN103957307B (zh) 一种信息处理方法及电子设备
CN112633806B (zh) 一种电子零件物料清单管理方法及相关设备
CN107209492A (zh) 可编程逻辑控制器设定文件生成辅助装置
CN105205652B (zh) Erp单据的修订方法和erp单据的修订系统
TWI766167B (zh) 收款控制方法、裝置、伺服器及可讀儲存媒體

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180223

RJ01 Rejection of invention patent application after publication