CN113034165B - 数据处理方法和装置、存储介质及电子装置 - Google Patents
数据处理方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN113034165B CN113034165B CN201911253529.3A CN201911253529A CN113034165B CN 113034165 B CN113034165 B CN 113034165B CN 201911253529 A CN201911253529 A CN 201911253529A CN 113034165 B CN113034165 B CN 113034165B
- Authority
- CN
- China
- Prior art keywords
- state
- target
- order
- jump
- configuration file
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title abstract description 24
- 238000000034 method Methods 0.000 claims abstract description 29
- 230000009191 jumping Effects 0.000 claims abstract description 22
- 230000001960 triggered effect Effects 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 abstract description 4
- 230000007704 transition Effects 0.000 description 16
- 230000009466 transformation Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005266 casting Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0276—Advertisement creation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/102—Bill distribution or payments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0273—Determination of fees for advertising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0277—Online advertisement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种数据处理方法和装置、存储介质及电子装置。其中,该方法包括:获取待处理的目标订单的目标类型;从配置文件集合中获取目标状态机的目标配置文件;在目标订单当前处于目标状态机中的第一状态的情况下,获取第一跳转条件中指示的第一操作和执行第一操作的第一帐号;在第一操作执行成功、且第一帐号为第一跳转权限指示的允许执行第一操作的目标帐号的情况下,将目标订单在目标状态机中的状态从第一状态跳转到第二状态。本发明解决了状态转换方案较为复杂的问题的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种数据处理方法和装置、存储介质及电子装置。
背景技术
在广告投放下单的业务中,由于复杂的广告投放下单逻辑,经常会遇到比较复杂的状态转换,而且不同类型的广告订单具有不同的状态流程。此外,在不同平台上不同角色可执行的状态操作也不同。例如,广告主平台可撤单、接单平台可接单等。面对这些复杂的逻辑,现有技术中通常需要使用大量的if-else判断类似的硬编码,来处理这些复杂的状态流转。
然而现有技术中的这种方法,实现起来代码量很大,项目可扩展性低,项目臃肿且结构复杂。如果存在修改其中流转的逻辑或删改状态,相关改动较多,且容易出问题。此外,由于各个状态直接的变化可能性较多,在广告投放的订单系统中,往往存在上百种流转的可能,不容易测试。
针对现有技术中,状态转换方案较为复杂的问题,目前尚未存在有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法和装置、存储介质及电子装置,以至少解决状态转换方案较为复杂的问题的技术问题。
根据本发明实施例的一个方面,提供了一种数据处理方法,包括:获取待处理的目标订单的目标类型;从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态。
根据本发明实施例的另一方面,还提供了一种数据处理装置,包括:第一获取模块,用于获取待处理的目标订单的目标类型;第二获取模块,从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;第三获取模块,用于在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;跳转模块,用于在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据处理方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的数据处理方法。
在本发明实施例中,通过获取待处理的目标订单的目标类型;从配置文件集合中获取与目标类型相对应的目标状态机的目标配置文件,在目标订单当前处于目标状态机中的第一状态的情况下,获取第一跳转条件中指示的第一操作和执行第一操作的第一帐号;在第一操作执行成功、且第一帐号为第一跳转权限指示的允许执行第一操作的目标帐号的情况下,将目标订单在目标状态机中的状态从第一状态跳转到第二状态。从而实现了简化状态转换逻辑的技术效果,进而解决了状态转换方案较为复杂的问题的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据处理方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的数据处理方法的流程图;
图3是根据本发明实施例的一种可选的数据处理方法的硬件环境示意图;
图4是根据本发明可选的实施例的一种可选的数据处理方法的示意图一;
图5是根据本发明可选的实施例的一种可选的数据处理方法的示意图二;
图6是根据本发明可选的实施例的一种可选的数据处理方法的示意图三;
图7是根据本发明实施例的一种可选的数据处理方法的示意图;
图8是根据本发明实施例的一种可选的电子装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
状态变换表示状态与状态间的变更,并且用必须满足确使变换发生的条件来描述它。
根据本发明实施例的一个方面,提供了一种数据处理方法,可选地,作为一种可选的实施方式,上述数据处理方法可以但不限于应用在多种类型的广告投放下单中。例如,应用于如图1所示的订单变换场景中。
本实施方式可以通过以一种配置文件的方式将复杂的流转逻辑简化和抽象,不同类型订单可对应不同的配置文件,配置文件还可包含状态对应的一些属性(例如权限,文案等),以及广告订单投放过程中触发的相关事件。
根据本发明实施例的一个方面,提供了一种数据处理方法,如图2所示,该方法包括:
步骤S202,获取待处理的目标订单的目标类型;
步骤S204,从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;
步骤S206,在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;
步骤S208,在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态。
可选地,在本实施例中,上述数据处理方法可以应用于于如图3所示的由服务器302和终端304所构成的硬件环境中。如图3所示,服务器302通过网络与终端304进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端304并不限定于PC、手机、平板电脑等。本发明实施例的数据处理方法可以由服务器302来执行,也可以由终端304来执行,还可以是由服务器302和终端304共同执行。其中,终端304执行本发明实施例的数据处理方法也可以是由安装在其上的客户端来执行。
可选地,在本实施例中,不同类型的广告订单具有不同的状态流程。为了支持不同订单类型对应不同的状态机配置,因此可在订单数据库中对订单表新增一个类型字段,不同类型对应不同的业务。例如,type=1表示“广告业务1”,type=2表示“广告业务2”。每一个订单通过订单模型对应映射到数据库订单数据,订单模型初始化时通过数据库的订单类型加载不同的状态机。
可选地,在本实施例中,在不同平台上不同角色可执行的状态操作也不同。例如广告主平台可撤单、接单平台可接单等。可通过在状态机配置文件中,增加每一个状态对应的需要的权限,每次执行状态变换时,查看订单当前状态在当前平台当前角色下是否可执行该操作。
在本实施例中,当一个条件被满足,可能将会触发一个动作,或者执行一次状态的变换。在执行者执行操作成功,且执行者具有权限的情况下装换状态机的状态。
作为一个可选的实施方式,状态机配置可以通过代码配置(代码返回鼓点数组或对象)、数据库、yaml文件等方式给出,其中,yaml是一个可读性高,用来表达数据序列化的格式,可以用来写配置文件。以图4所示的一种“直播服务”的广告投放状态流程图为例,广告主可下单投放直播业务相关的广告订单。从图中看出,广告投放具有状态较多,涉及多个平台角色,状态流转复杂等特点。因此需要通过状态机配置将该流程固化成一种配置文件的方式。
状态机的配置一般包含现态、次态、条件、事件、变换、属性。如下图5所示的具有两个状态的状态机,图中“5”表示待付款的状态值,“10”表示已完成的状态值。在本实施例中,现态是指当前所处的状态。次态表示条件满足后要迁往的新状态,“次态”是相对于“现态”而言的,“次态”一旦被激活,就转变成新的“现态”了。当有外部的事件或者条件被触发,从一个状态转换到另一个状态,如图5中从“待付款”状态流转到已完成的“付款”状态。本实施例中的事件又称为动作,执行状态变换时触发的动作。事件不是必需的,当条件满足后,也可以不执行事件,直接迁移到新状态。例如,付款成功后需要发送邮件,或者记录日志。状态值具有的一些属性值。例如现态状态值“5”的属性包含状态文案“待付款”,或状态值对应角色、权限等。
在本实施例中,可通过在状态机配置文件中,增加每一个状态对应的需要的权限,每次执行状态变换时,查看订单当前状态在当前平台当前角色下是否可执行该操作。下表1是与图4相对应的详细订单状态配置表。在该表中,由“待付款”状态装换为“待开播”状态,需执行付款操作,付款操作只有广告投放平台的广告代理商角色才能执行,因此,将从“待付款”装换为“待开播”状态变换的权限配置为“广告投放平台的广告代理商”。
表1
在本实施例中,订单状态变换的每一个动作,可以增加是否可执行变换的函数条件。例如表1中,从“待开播”到“已开播”的状态转换,需判断订单对应的直播是否开始,若已开始,订单才可以执行该状态变换,否则无法进行状态流转。
可选地,在本实施例中,执行广告投放订单状态变换的主要流程如图6所示。
作为一种可选的方案,在将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态时,所述方法还包括:执行从所述第一状态跳转到所述第二状态时触发的第二操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态时触发的所述第二操作,所述第一状态和所述第二状态与所述目标类型下的所述目标订单中的第一订单状态和第二订单状态一一对应。
可选地,在本实施例中,当开始执行状态变换时,通过状态机配置触发相关的事件。例如,关闭订单时,触发更新订单关闭时间;客户接单时,更新订单接单时间。
作为一种可选的方案,在执行从所述第一状态跳转到所述第二状态时触发的第二操作之后,所述方法还包括:在从所述第一状态跳转到所述第二状态成功的情况下,确认执行所述第二操作得到的操作结果有效,保存所述操作结果;在从所述第一状态跳转到所述第二状态失败的情况下,确认执行所述第二操作得到的操作结果无效,不保存所述操作结果。
可选地,在本实施例中,进入状态事件为预更新数据,在状态装换成功且确认操作执行有效的情况下,保存操作结果。若最终未执行成功该状态变换,则相关数据不保存,例如,更新订单关闭时间、接单时间。
作为一种可选的方案,所述执行从所述第一状态跳转到所述第二状态时触发的第二操作,包括:生成所述第二操作所对应的第一消息队列;通过所述第一消息队列以异步的方式执行所述第二操作。
可选地,在本实施例中,消息队列是一个存放消息的容器,当我们需要使用消息的时候可以取出消息供自己使用。消息队列是分布式系统中重要的组件,使用消息队列主要是为了通过异步处理提高系统性能和削峰、降低系统耦合性。触发事件也通过消息队列的方式,异步执行该事件,可以更好的解耦状态变换与触发事件的关系,并提升性能。例如,发送邮件是一件很慢的事,可以触发一个发送邮件的消息队列,通过消息队列后续去处理发送邮件的相关操作,大大减少订单变换时执行的时间,并减少因为后续操作不可靠导致的状态无法流转。以事件加消息队列的事件驱动方式处理订单流转时相关的操作,可以解耦核心状态转换与复杂的业务逻辑关系。
作为一种可选的方案,所述执行从所述第一状态跳转到所述第二状态时触发的第二操作,包括:在所述第二状态为生成所述目标订单的情况下,更新所述目标订单的生成时间;和/或在所述第二状态为关闭所述目标订单的情况下,更新所述目标订单的关闭时间。
作为一种可选的方案,在将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态之后,所述方法还包括:执行从所述第一状态跳转到所述第二状态成功之后触发的第三操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态成功之后触发的所述第三操作。
可选地,在本实施例中,当执行完状态变换时,触发状态机配置中的离开状态事件。例如在上表1中“待验收->已付款”,触发订单扣款,并发送邮件给相关方。也可以在这里对所有状态变换,配置记录状态变化的日志,通过事件的方式记录日志,可以更好地划分模块间的关系。
作为一种可选的方案,所述执行从所述第一状态跳转到所述第二状态成功之后触发的第三操作,包括:生成所述第三操作所对应的第二消息队列;通过所述第二消息队列以异步的方式执行所述第三操作。作为一种可选的方案,在从配置文件集合中获取目标状态机的目标配置文件之前,所述方法还包括:为不同的订单类型配置对应的状态机的配置文件,得到所述配置文件集合,其中,所述不同的订单类型包括所述目标类型,所述配置文件包括所述目标配置文件。
可选地,在本实施例中,广告投放具有状态较多,涉及多个平台角色,状态流转复杂等特点。因此需要通过状态机配置将该流程固化成一种配置文件的方式。
本实施方式通过配置订单状态流转的状态机,将复杂的订单流转抽象和简化为一个状态图,对于流程复杂易变的广告业务场景能大大减轻维护和测试的难度,使订单状态变得可控、易扩展。对不同类型的广告订单流程绑定不同的状态机模型,所有订单可以自动获取对应的状态机进行状态流转,支持系统快速扩展不同类型的下单逻辑。通过在状态机属性中绑定广告系统的平台和角色,可以更快速地配置所有状态变换的权限。将状态机中涉及的函数操作以事件加消息队列的方式,解耦了复杂逻辑与状态变换的关系,并提升了状态变换时相关业务逻辑的性能。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述数据处理方法的数据处理装置。如图7所示,该装置包括:第一获取模块72,用于获取待处理的目标订单的目标类型;第二获取模块74,从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;第三获取模块76,用于在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;跳转模块78,用于在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态。
作为一种可选的方案,所述装置还包括:执行模块,用于,在将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态时,执行从所述第一状态跳转到所述第二状态时触发的第二操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态时触发的所述第二操作,所述第一状态和所述第二状态与所述目标类型下的所述目标订单中的第一订单状态和第二订单状态一一对应。
作为一种可选的方案,所述装置还用于在执行从所述第一状态跳转到所述第二状态时触发的第二操作之后,在从所述第一状态跳转到所述第二状态成功的情况下,确认执行所述第二操作得到的操作结果有效,保存所述操作结果;在从所述第一状态跳转到所述第二状态失败的情况下,确认执行所述第二操作得到的操作结果无效,不保存所述操作结果。
作为一种可选的方案,所述执行模块还用于,生成所述第二操作所对应的第一消息队列;通过所述第一消息队列以异步的方式执行所述第二操作。
作为一种可选的方案,所述执行模块还用于,在所述第二状态为生成所述目标订单的情况下,更新所述目标订单的生成时间;和/或在所述第二状态为关闭所述目标订单的情况下,更新所述目标订单的关闭时间。
作为一种可选的方案,所述装置还用于,在将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态之后,执行从所述第一状态跳转到所述第二状态成功之后触发的第三操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态成功之后触发的所述第三操作。
作为一种可选的方案,所述装置还用于通过如下方式执行从所述第一状态跳转到所述第二状态成功之后触发的第三操作,生成所述第三操作所对应的第二消息队列;通过所述第二消息队列以异步的方式执行所述第三操作。
作为一种可选的方案,所述装置还用于,在从配置文件集合中获取目标状态机的目标配置文件之前,为不同的订单类型配置对应的状态机的配置文件,得到所述配置文件集合,其中,所述不同的订单类型包括所述目标类型,所述配置文件包括所述目标配置文件。
根据本发明实施例的又一个方面,还提供了一种用于实施上述数据处理方法的电子装置,如图8所示,该电子装置包括:一个或多个(图中仅示出一个)处理器802、存储器804、传感器806、编码器808以及传输装置810,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取待处理的目标订单的目标类型;
S2,从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;
S3,在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;
S4,在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态。
可选地,本领域普通技术人员可以理解,图8所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图8其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图8中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图8所示不同的配置。
其中,存储器804可用于存储软件程序以及模块,如本发明实施例中的数据处理方法和装置对应的程序指令/模块,处理器802通过运行存储在存储器804内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的目标组件的控制方法。存储器804可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器804可进一步包括相对于处理器802远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置810用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置810包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置810为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器804用于存储应用程序。
根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取待处理的目标订单的目标类型;
S2,从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;
S3,在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;
S4,在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (9)
1.一种数据处理方法,其特征在于,包括:
获取待处理的目标订单的目标类型;
从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;
在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;
在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态,并执行从所述第一状态跳转到所述第二状态时触发的预更新数据操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态时触发的所述预更新数据操作,所述第一状态和所述第二状态与所述目标类型下的所述目标订单中的第一订单状态和第二订单状态一一对应;
在将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态成功的情况下,执行离开状态操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态成功之后触发的所述离开状态操作。
2.根据权利要求1所述的方法,其特征在于,在执行从所述第一状态跳转到所述第二状态时触发的预更新数据操作之后,所述方法还包括:
在从所述第一状态跳转到所述第二状态成功的情况下,确认执行所述预更新数据操作得到的操作结果有效,保存所述操作结果;
在从所述第一状态跳转到所述第二状态失败的情况下,确认执行所述预更新数据操作得到的操作结果无效,不保存所述操作结果。
3.根据权利要求1所述的方法,其特征在于,所述执行从所述第一状态跳转到所述第二状态时触发的预更新数据操作,包括:
生成所述预更新数据操作所对应的第一消息队列;
通过所述第一消息队列以异步的方式执行所述预更新数据操作。
4.根据权利要求1所述的方法,其特征在于,所述执行从所述第一状态跳转到所述第二状态时触发的预更新数据操作,包括:
在所述第二状态为生成所述目标订单的情况下,更新所述目标订单的生成时间;和/或
在所述第二状态为关闭所述目标订单的情况下,更新所述目标订单的关闭时间。
5.根据权利要求1所述的方法,其特征在于,所述执行从所述第一状态跳转到所述第二状态成功之后触发的离开状态操作,包括:
生成所述离开状态操作所对应的第二消息队列;
通过所述第二消息队列以异步的方式执行所述离开状态操作。
6.根据权利要求1至5中任一项所述的方法,其特征在于,在从配置文件集合中获取目标状态机的目标配置文件之前,所述方法还包括:
为不同的订单类型配置对应的状态机的配置文件,得到所述配置文件集合,其中,所述不同的订单类型包括所述目标类型,所述配置文件包括所述目标配置文件。
7.一种数据处理装置,其特征在于,包括:
第一获取模块,用于获取待处理的目标订单的目标类型;
第二获取模块,从配置文件集合中获取目标状态机的目标配置文件,其中,所述目标配置文件与所述目标类型对应,所述目标配置文件包括所述目标状态机中的第一状态和第二状态、所述第一状态向所述第二状态跳转的第一跳转条件、所述第一状态向所述第二状态跳转的第一跳转权限;
第三获取模块,用于在所述目标订单当前处于所述目标状态机中的所述第一状态的情况下,获取所述第一跳转条件中指示的第一操作和执行所述第一操作的第一帐号;
跳转模块,用于在所述第一操作执行成功、且所述第一帐号为所述第一跳转权限指示的允许执行所述第一操作的目标帐号的情况下,将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态;
执行模块,用于执行从所述第一状态跳转到所述第二状态时触发的预更新数据操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态时触发的所述预更新数据操作,所述第一状态和所述第二状态与所述目标类型下的所述目标订单中的第一订单状态和第二订单状态一一对应;
所述数据处理装置,还用于在将所述目标订单在所述目标状态机中的状态从所述第一状态跳转到所述第二状态成功的情况下,执行离开状态操作,其中,所述目标配置文件还包括从所述第一状态跳转到所述第二状态成功之后触发的所述离开状态操作。
8.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至6任一项中所述的方法。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911253529.3A CN113034165B (zh) | 2019-12-09 | 2019-12-09 | 数据处理方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911253529.3A CN113034165B (zh) | 2019-12-09 | 2019-12-09 | 数据处理方法和装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113034165A CN113034165A (zh) | 2021-06-25 |
CN113034165B true CN113034165B (zh) | 2023-10-31 |
Family
ID=76451424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911253529.3A Active CN113034165B (zh) | 2019-12-09 | 2019-12-09 | 数据处理方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113034165B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114817067B (zh) * | 2022-05-25 | 2022-09-02 | 云账户技术(天津)有限公司 | 一种自动mock测试的方法及装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105205668A (zh) * | 2015-09-16 | 2015-12-30 | 宇龙计算机通信科技(深圳)有限公司 | 电子账户的管理方法、电子账户的管理系统和终端 |
CN105589742A (zh) * | 2014-11-12 | 2016-05-18 | 中国移动通信集团公司 | 一种信息处理方法和电子设备 |
US9569255B1 (en) * | 2015-03-25 | 2017-02-14 | Amazon Technologies, Inc. | Persistent state machine |
US9710865B1 (en) * | 2011-08-15 | 2017-07-18 | Amazon Technologies, Inc. | Coordinating distributed order execution |
CN108230089A (zh) * | 2017-12-06 | 2018-06-29 | 链家网(北京)科技有限公司 | 一种在线订单处理方法、系统及装置 |
CN108287849A (zh) * | 2017-01-10 | 2018-07-17 | 北京奇虎科技有限公司 | 操作方跨平台页面跳转控制方法及其相应的装置 |
CN108491238A (zh) * | 2018-01-22 | 2018-09-04 | 中国电子科技集团公司第十五研究所 | 一种针对危化品电子交易订单的状态机及设计方法 |
CN108509265A (zh) * | 2018-04-04 | 2018-09-07 | 北京奇安信科技有限公司 | 移动端应用app状态处理方法及装置 |
CN108549560A (zh) * | 2018-02-28 | 2018-09-18 | 腾讯科技(成都)有限公司 | 界面状态的切换方法和装置、存储介质、电子装置 |
CN108764864A (zh) * | 2018-04-09 | 2018-11-06 | 阿里巴巴集团控股有限公司 | 一种配置支付流程、执行支付流程的方法、装置及设备 |
CN108875354A (zh) * | 2018-05-31 | 2018-11-23 | 上海连尚网络科技有限公司 | 权限开启方法、终端设备及计算机可读介质 |
CN110310170A (zh) * | 2019-05-24 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 订单处理方法、装置、电子设备及存储介质 |
WO2019196244A1 (zh) * | 2018-04-10 | 2019-10-17 | 平安科技(深圳)有限公司 | 实时回调订单的方法和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572771B (zh) * | 2013-10-25 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 处理状态展示方法及装置 |
US10015078B2 (en) * | 2015-01-20 | 2018-07-03 | Oracle International Corporation | Policy-based order jeopardy management |
US10607263B2 (en) * | 2016-06-30 | 2020-03-31 | Oath Inc. | Computerized systems and methods for authenticating users on a network device via dynamically allocated authenticating state machines hosted on a computer network |
-
2019
- 2019-12-09 CN CN201911253529.3A patent/CN113034165B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9710865B1 (en) * | 2011-08-15 | 2017-07-18 | Amazon Technologies, Inc. | Coordinating distributed order execution |
CN105589742A (zh) * | 2014-11-12 | 2016-05-18 | 中国移动通信集团公司 | 一种信息处理方法和电子设备 |
US9569255B1 (en) * | 2015-03-25 | 2017-02-14 | Amazon Technologies, Inc. | Persistent state machine |
CN105205668A (zh) * | 2015-09-16 | 2015-12-30 | 宇龙计算机通信科技(深圳)有限公司 | 电子账户的管理方法、电子账户的管理系统和终端 |
CN108287849A (zh) * | 2017-01-10 | 2018-07-17 | 北京奇虎科技有限公司 | 操作方跨平台页面跳转控制方法及其相应的装置 |
CN108230089A (zh) * | 2017-12-06 | 2018-06-29 | 链家网(北京)科技有限公司 | 一种在线订单处理方法、系统及装置 |
CN108491238A (zh) * | 2018-01-22 | 2018-09-04 | 中国电子科技集团公司第十五研究所 | 一种针对危化品电子交易订单的状态机及设计方法 |
CN108549560A (zh) * | 2018-02-28 | 2018-09-18 | 腾讯科技(成都)有限公司 | 界面状态的切换方法和装置、存储介质、电子装置 |
CN108509265A (zh) * | 2018-04-04 | 2018-09-07 | 北京奇安信科技有限公司 | 移动端应用app状态处理方法及装置 |
CN108764864A (zh) * | 2018-04-09 | 2018-11-06 | 阿里巴巴集团控股有限公司 | 一种配置支付流程、执行支付流程的方法、装置及设备 |
WO2019196244A1 (zh) * | 2018-04-10 | 2019-10-17 | 平安科技(深圳)有限公司 | 实时回调订单的方法和系统 |
CN108875354A (zh) * | 2018-05-31 | 2018-11-23 | 上海连尚网络科技有限公司 | 权限开启方法、终端设备及计算机可读介质 |
CN110310170A (zh) * | 2019-05-24 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 订单处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113034165A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160077808A1 (en) | Method and system for providing content | |
CN104811484B (zh) | Fota升级方法和装置 | |
EP2989543B1 (en) | Method and device for updating client | |
CN100511156C (zh) | 强制性地终止输入/输出操作阻止的线程的设备和方法 | |
WO2015070777A1 (zh) | 软件升级方法、客户端、服务器及系统、存储介质 | |
CN103984573A (zh) | 应用程序的安装方法及装置 | |
CN109840096A (zh) | 操作系统的安装方法及装置 | |
CN105592117A (zh) | 一种事务消息的处理方法和装置 | |
WO2016026329A1 (zh) | 终端的升级方法及装置 | |
CN103687059A (zh) | 建立计算设备与移动设备之间连接的方法及装置 | |
CN109725912A (zh) | 应用程序配置方法、装置、终端、服务器及可读存储介质 | |
CN110990048A (zh) | 一种监控Unity项目资源缺失的方法及系统 | |
CN113034165B (zh) | 数据处理方法和装置、存储介质及电子装置 | |
CN107491298B (zh) | 一种按钮对象自动扫描方法及系统 | |
CN109063468A (zh) | 一种安装包完整性验证及修复的方法 | |
US20110219096A1 (en) | Method and system for operations management in a telecommunications terminal with a state machine | |
CN109343880A (zh) | 一种rn包更新方法、装置及可读存储介质 | |
CN114237634A (zh) | 应用发布风险识别方法、装置、设备、介质、程序产品 | |
TW201417029A (zh) | 原始程式碼管理系統、原始程式碼管理方法以及原始程式碼管理程式 | |
CN108845953B (zh) | 接口测试的方法及装置 | |
CN111984275A (zh) | 基于cpu架构类型的系统部署方法、系统、终端及存储介质 | |
CN109308328A (zh) | 远程查询移动终端app本地数据的方法、装置以及系统 | |
CN116028138B (zh) | 应用发布方法及装置 | |
CN116107603B (zh) | 一种固件升级方法、装置、存储介质和电子设备 | |
CN114912048B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40050592 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |