本公开涉及一种信息技术处理领域,尤其涉及一种数据对接方法、可视化生成装置和企业数据管理系统。
背景技术:
1、在很多应用场景中,内部系统需要与外部服务提供方对接,以获取外部服务提供方提供的各类服务,并实现内部用户与外部服务提供方的交易。例如,相比于企业人员自行去订房网站订房,企业内部的管理系统如果能对接外部订房网站并完成支付,则企业人员能在企业内部差旅服务界面上直接完成相关操作,将大大提升企业对差旅及后续财务事项的处理效率。
2、在现有技术中,外部服务的接入时通常需要逐一编程或是基于简单脚本实现,低效且无法实现服务编排,同时难以保证内外系统间的支付数据一致性。
3、为此,需要一种改进的交易数据对接方案。
技术实现思路
1、本公开要解决的一个技术问题是提供一种交易数据对接方法、可视化生成装置和企业数据管理系统。本发明通过将交易场景涉及的内外接口作为节点进行设置并由此可视化地构造对应的dag(有向无环图),简化系统对外部服务的接入和数据的获取。针对交易中涉及的支付场景,通过主子dag模式,可由异步执行的子dag通过轮询或通知获取主dag同步操作时未取得的处理或补偿结果,为支付数据的一致性提供保障。还可以通过中间节点的串行和并行编排来整合多个外部服务以提供更为高效全面的服务功能。。
2、根据本公开的第一个方面,提供了一种交易数据对接方法,包括:根据交易的目标场景选择内部接口和外部接口;将所述内部接口设为对应于开始节点和结束节点,将所述外部接口设为对应于中间节点;连接所述开始节点、所述中间节点和所述结束节点以构造目标场景dag,以及在目标场景为所述交易的支付场景时,为支付场景dag的中间节点构造,所述子dag用于异步执行并返回中间节点相关操作的操作结果,其中,目标场景请求被作为传入参数送入所述目标场景dag,执行所述目标场景dag以获取基于外部操作的输出结果作为请求反馈。
3、所述目标场景dag通常用于同步执行,并且支付场景的中间节点的操作可能会包括特定情况触发的异步执行操作。为此,可选地,为支付场景dag的中间节点构造异步执行子dag包括:添加从所述中间节点到所述异步执行子dag的开始节点的关联消息线,并且添加从所述异步执行子dag的结束节点到所述中间节点的关联消息线,以构造基于所述中间节点轮询而被执行的异步执行轮询子dag。作为替换或者补充,为支付场景dag的中间节点构造异步执行子dag可以包括:设置所述中间节点相关操作的操作完成触发所述异步执行子dag的开始节点操作的机制,并且添加从所述异步执行子dag的结束节点到所述中间节点的关联消息线,以构造基于所述中间节点相关操作完成而被执行的异步执行消息子dag,其中,所述关联消息线用于连接起点的消息对连接终点操作的触发。
4、可选地,所述方法还包括:为所述结束节点构造通知子dag,用于基于所述异步执行子dag返回的所述操作结果,基于消息模板将所述操作结果组装在执行通知返回给所述内部接口。
5、可选地,连接所述开始节点、所述中间节点和所述结束节点以构造目标场景dag包括:为所述中间节点设置调用入参模板和调用协议,并且为所述结束节点设置通知模板,其中,来自在前节点的参数被放入所述入参模板用于获取当前中间节点的调用入参,所述调用协议用于实现当前中间节点对应外部接口的调用,并且所述结束节点基于所述通知模板根据在前中间节点的传入参数生成所述输出结果。
6、可选地,根据目标场景选择内部接口和外部接口包括:根据目标场景确定需要执行的多个功能步骤;为每个功能步骤选择各种所需的外部接口,并且连接所述开始节点、所述中间节点和所述结束节点以构造目标场景dag包括:将多个所述外部接口设为对应于目标场景dag中的串行中间节点,并按照功能步骤逐一连接每一个串行中间节点。
7、可选地,根据目标场景选择内部接口和外部接口包括:选择来自不同服务提供方的能够实现相同场景功能的多个外部接口,并且连接所述开始节点、所述中间节点和所述结束节点以构造目标场景dag包括:将所述多个外部接口设为对应于目标场景dag中的并行中间节点,并各自连接上下游节点。
8、根据本公开的第二个方面,提供了一种数据对接dag可视化生成装置,用于在图形用户界面中执行如第一方面所述的方法,以构造可视化的所述目标场景dag。
9、根据本公开的第三个方面,提供了一种企业数据管理系统,包括:dag构造模块,用于创建与企业外部进行交易所涉及的多个目标场景,并为每个目标场景执行如第一方面所述的交易数据对接方法以构造对应的目标场景dag;dag执行模块,用于在接收到来自内部用户的目标场景请求时,执行相应的目标场景dag,以将所述请求结果返回给所述用户。
10、可选地,所述dag执行模块用于:所述内部接口接收来自用户的针对所述目标场景的请求;将目标场景请求作为传入参数送入所述目标场景dag;执行所述目标场景dag,并获取基于外部服务的执行结果而生成请求结果;以及所述请求结果返回给所述用户。
11、可选地,执行相应的目标场景dag包括:遍历所述目标场景dag以确定入度为0的节点并获取上下文参数和节点配置;基于获取上下文参数和节点配置并行执行每个入度为0的节点对应操作;将节点执行结果放入上下文,并将节点上的临边入度减1;以及重复如上操作,直至完成整个目标场景dag的操作。
12、可选地,基于获取上下文参数和节点配置并行执行每个入度为0的节点对应操作包括:在节点配置中包括关联消息线时,根据关联消息配置生成子dag的驱动入参并驱动子dag的异步执行;以及获取所述子dag的异步执行结果用于所述请求结果的生成。
13、根据本公开的第四个方面,提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如上述第一方面所述的方法。
14、根据本公开的第五个方面,提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一方面所述的方法。
15、由此,本发明通过使用dag的可视化模式和节点设置,提升的外部服务接入以完成交易的便利性和效率;通过主子dag的配置解决交易支付场景下的超时掉单问题,适用于对数据一致性要求高的金融领域;支持多节点服务编排,使得后续节点可以获取在前节点的执行数据,能够将外部服务提供方的各个接口编排出新接口并以服务能力输出。
1.一种交易数据对接方法,包括:
2.如权利要求1所述的方法,其中,为支付场景dag的中间节点构造子dag包括:
3.如权利要求1所述的方法,其中,为支付场景dag的中间节点构造子dag:
4.如权利要求1所述的方法,所述方法还包括:
5.如权利要求1所述的方法,其中,连接所述开始节点、所述中间节点和所述结束节点以构造目标场景dag包括:
6.如权利要求1所述的方法,其中,根据交易的目标场景选择内部接口和外部接口包括:
7.如权利要求1所述的方法,其中,根据交易的目标场景选择内部接口和外部接口包括:
8.一种交易数据对接dag可视化生成装置,用于在图形用户界面中执行如权利要求1-7中任一项所述的方法,以构造可视化的所述目标场景dag。
9.一种企业数据管理系统,包括:
10.如权利要求9所述的系统,其中,所述dag执行模块用于:
11.如权利要求9所述的系统,其中,执行相应的目标场景dag包括:
12.如权利要求11所述的系统,其中,基于获取上下文参数和节点配置并行执行每个入度为0的节点对应操作包括:
13.一种计算设备,包括:
14.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至8中任一项所述的方法。