一种交易流程时间轴构建方法和系统技术领域
本发明涉及网络数据处理,具体地指一种交易流程时间轴构建方法和系统。
背景技术
使用在线平台进行交易时,当双方完成议价,达到交易意向后,会进入交割程序,
常常会出现如下场景:卖方发货,并等待买方确认收货付款;买方发出货款,并收到货物后
在交易平台上确认收货;最终卖方确认收到货款后,双方进行对交易的评价,完成交易。
上述交易流程中,甚至包括双发议价过程中,交易双方的每一个选择,如选择交易
的客体、交割方式、是否取消交易;都会决定交易是否继续或交易的后续流程。而交易双方
迫切地希望能够清晰的掌握完成交易需要经过哪些流程,这一笔交易目前进行到哪一步
骤。因此,亟待一种清晰的交易进度显示方法通过客户端显示给用户。
发明内容
本发明所要解决的技术问题是提供根据用户提出的不同交易请求,构建交易流程
时间轴并展示实时交易状态的一种通过时间轴显示交易进度的方法。
本发明解决上述技术问题的技术方案如下:
一种交易流程时间轴构建方法,包括如下步骤:
S1.数据库服务器存储预设的交易流程状态机数据,所述交易流程时间轴模板包
括若干个交易流程状态机状态;
S2.连接服务器与客户端相连接,并接收用户通过客户端发送的交易请求,将所述
交易请求转发至应用服务器;
S3.应用服务器与数据库服务器相连接,应用服务器根据所述交易流程状态机数
据,生成相应的所述交易流程状态机状态,根据所述交易流程状态机状态生成后续的交易
事件消息及对应的交易日志;将所述交易事件消息变换为客户端事件后发送至的发出所述
交易请求的客户端及其交易对手方客户端。
进一步地,所述步骤S3中,生成所述交易请求对应的交易流程时间轴节点的方法
为:
S31.应用服务器监听并接收所述交易请求;根据所述交易请求,应用服务器启动
与所述交易请求对应的至少一个状态机流转线程及至少一个交易处理线程;
S32.应用服务器与数据库服务器相连接,并通过对应的状态机流转引擎线程对所
述交易请求进行流转,根据状态机流转引擎线程生成对应的所述交易流程状态机状态;并
在流转过程中依次调用对应的事件处理线程对所述交易请求进行处理,然后将处理得到的
最终处理结果封装为交易事件消息;
进一步地,所述交易请求包括交易议价请求和交易交割请求等,以将所有交易请
求纳入到时间轴的构建系统中。
进一步地,所述步骤S3中,客户端弹窗方式响应所述客户端事件,并对客户端画面
信息实时更新,改善了通常B/S架构需要分页显示交易状态的弊端。
进一步地,所述步骤S3中,应用服务器将所述交易事件消息分发至消息服务器,消
息服务器对所述交易事件消息进行存储和分发至对应客户端。
本发明还提供了一种交易流程时间轴构建系统,包括多个客户端、与多个所述客
户端相连接的交易平台。
所述交易平台包括连接服务器、缓存数据服务器、消息服务器、应用服务器、数据
库服务器。
所述连接服务器用于连接所述客户端。
所述缓存数据服务器用于缓存交易信息,所述交易信息包括用户基础信息,交易
事件消息;
所述消息服务器用于向相应的客户端转发交易事件消息;
所述应用服务器用于处理交易事件消息;
所述数据库服务器用于存储预设的交易流程状态机数据,所述交易流程时间轴模
板包括若干个交易流程状态机状态。
进一步地,所述应用服务器和所述数据库之间设置有数据库持续化连接池,所述
数据库持续化连接池用于分配、管理和释放所述数据库连接资源。
本发明的有益之处在于采用了C/S构架,根据客户端发送的交易请求,生成对应的
交易流程时间轴节点,构建对应的交易流程时间轴,并将交易事件消息变换为客户端事件
发送至对应的客户端,对客户端信息画面及时更新,使用户及时了解交易实时状态。
附图说明
图1为本发明交易流程时间轴构建方法的步骤示意图;
图2为本发明交易流程时间轴构建系统的结构示意图;
图3为本发明交易流程时间轴构建方法的时间轴构建示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并
非用于限定本发明的范围。
如图1所示,S1.数据库服务器存储预设的交易流程状态机数据,所述交易流程状
态机数据包括若干种交易流程状态机状态;
S2.连接服务器与客户端相连接,并接收用户通过客户端发送的交易请求,将所述
交易请求转发至应用服务器;
S3.应用服务器与数据库服务器相连接,应用服务器根据所述交易流程状态机数
据,生成相应的所述交易流程状态机状态,根据所述交易流程状态机状态生成后续的交易
事件消息及对应的交易日志;将所述交易事件消息变换为客户端事件后发送至的发出所述
交易请求的客户端及其交易对手方客户端。
所述步骤S3中,生成所述交易请求对应的交易流程时间轴节点的方法为:
S31.应用服务器监听并接收所述交易请求;根据所述交易请求,应用服务器启动
与所述交易请求对应的至少一个状态机流转线程及至少一个交易处理线程;
S32.应用服务器通过对应的状态机流转引擎线程对所述交易请求进行流转,根据
状态机流转引擎线程生成对应的所述交易流程状态机状态;并在流转过程中依次调用对应
的事件处理线程对所述交易请求进行处理,然后将处理得到的最终处理结果封装为交易事
件消息;
如图2所示,本发明还提供了一种交易流程时间轴构建系统,包括多个客户端、与
多个所述客户端相连接的交易平台。
所述交易平台包括连接服务器、缓存数据服务器、消息服务器、应用服务器、数据
库服务器。服务器均可采用服务器集群的模式。
所述连接服务器用于连接所述客户端。
所述缓存数据服务器用于缓存交易信息,所述交易信息包括用户基础信息,交易
事件消息;
所述消息服务器用于向相应的客户端转发交易事件消息;
所述应用服务器用于处理交易事件消息;
所述数据库服务器用于存储预设的交易流程状态机数据,所述交易流程时间轴模
板包括若干个交易流程状态机状态。
所述应用服务器和所述数据库之间设置有数据库持续化连接池,所述数据库持续
化连接池用于分配、管理和释放所述数据库连接资源。
上述状态机流程定义信息包括状态机信息和交易请求事件信息,如下表1和表2所
示,其中表1为状态机信息表,表2为状态机流程定义表。
表1状态机信息表
状态机ID
状态机描述
初始化状态ID
32
Test Process
51
21
Ticket Process
14
表2状态机流程定义表
如表1的状态机信息表所示,定义了两个状态机ID,即包括两个状态机32和21,分
别用于进行Test process和Ticket process进程处理。如表2所示,状态机ID为32的状态机
的流程定义表,定义了状态机的初始状态、条件、下一个状态,以及处理该事件的类。当用户
发起了交易请求事件,并进入等待答复状态后,若在交易请求时间内有事件接收者对交易
请求事件进行了答复,则进入“完成”状态,将状态ID修改为52,并调用“OKHandler”类对该
事件进行处理;若在交易请求时间内,没有接收到任何答复信息,则进入“交易请求过期”状
态,将状态ID修改为54,并调用“DNTHandler”对事件进行处理;若在交易请求时间内取消了
交易,则进入“取消交易状态”,将状态ID修改为53,并调用“CLEHandler”对事件进行处理。
如图3时间轴构建示意图所示,从时间轴整体来看某一状态机从同一状态经过不
同的操作/事件跳转到不同的下一状态,即图3中交易时间轴的一个节点经过不同流程事件
跳转到不同的下一时间轴节点。当发生“交易请求过期”或“取消交易”事件时,即为失败流
程时间,则下一节点为该交易流程时间轴最终节点,需要重新开始交易产生新的交易流程
时间轴。
所述交易请求包括交易议价请求和交易交割请求。
所述步骤S33中,客户端以弹窗方式响应所述客户端事件,并对客户端画面信息实
时更新。
所述步骤S33中,应用服务器将所述交易事件消息分发至消息服务器,消息服务器
对所述交易事件消息进行存储和分发至对应客户端。
而以票据交易为例,交易员启动客户端后出现如下流程:
Step1:交易发起方交易员启动对应客户端;
Step2:加载交易发起方客户端的缓存信息,包括用户基础信息,如用户交易账户
ID,交易名称等;
Step3:交易发起方交易员选择某银行,并打开业务交易画面;
Step4:交易发起方交易员在交易发起界面选择票据交易;
Step5:交易发起方交易员选择好待交易票据,填写好票据对应报价;
Step6:交易发起方交易员点击发起交易;
Step7:交易对手方接收到交易请求,包含对手方名称,交易品种,对方报价;
Step8:交易对手方打开议价画面;
Step9:交易对手方输入本方报价,填写报价信息;
Step10:交易对手方提交报价信息;
Step11:交易发起方接收到报价请求,包含对手方名称,交易品种,对方报价;
Step12:交易发起方打开议价画面,点击成交进入交割时间轴画面;
Step13:交易对手方弹出对应的提示框,打开进入交割时间轴画面;
Step14:交易发起方填写或点击时间轴当中的信息或按钮;
Step15:交易对手方客户端,弹出对应的提示框,填写或点击时间轴当中的信息或
按钮。
上述步骤中,交易发起方或交易对手方,选择交易的业务类型,报价模式,交割模
式均会构建相应的交易流程时间轴;同时也可在某一步取消交易,从而终止交易流程时间
轴。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和
原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。