一种基于事件的流程处理方法及相关系统技术方案

技术编号:17195783 阅读:12 留言:0更新日期:2018-02-03 22:35
本发明专利技术公开了一种基于事件的流程处理方法及相关系统。所述方法包括:当客户端监听到预设表单的画面按钮触发事件时,对客户端事件进行序列化并处理,将处理后的客户端事件序列化并发送给连接服务器;当连接服务器接收到不是自身需要处理的服务器事件时,发送给消息服务器,当接收到应用服务器返回的交易处理结果时,更新本地缓存中分发列表中每个客户端与处理结果对应的视图模型的数据;根据客户端当前显示的页面内容并判断,需要时将发生数据更新的视图模型的标识以及对应的更新的数据推送给客户端,以便更新客户端界面。整个业务流程以java事件为驱动,以实现流程的快速流转,能够实现对用户所关心的数据的实时刷新。

【技术实现步骤摘要】
一种基于事件的流程处理方法及相关系统
本专利技术涉及计算机
,特别涉及一种基于事件的流程处理方法及相关系统。
技术介绍
票据是指出票人依法签发的由自己或指示他人无条件支付一定金额给收款人或持票人的有价证券,即某些可以代替现金流通的有价证券。票据的形式可以包括纸质票据和电子票据。随着互联网的发展,许多基于互联网的票据交易平台应运而生。以银行承兑汇票为例,现有的票据交易平台的交易模式如下:用户可以在网上发送公开、定向的银行承兑汇票买断式、回购式转贴现报价,通过报价应答方式与业务人员联系,线下进行进一步议价交易。或者用户还可以通过网上填写承兑行类型、票面金额、汇票到期日等信息进行线下沟通议价等。上述网络的交易平台的一个共同点在交易过程中,其主要作用还是发布交易信息,交易双方只能线下点对点进行票据议价,线下交易,一方面,银行承兑汇票进行交易要考虑的要素很多,在网站上找到自己想要的票据要花费很长的时间;另外一方面,当找到想要进行交易的票后要在线下通过一个一个打电话等方式跟对手方进行议价,费时费力还有可能失败从而需要重新寻找合适的票;最后,因为用户掌握的信息有限,所以用户在交易中的利益不能得到预期的保证。基于上述问题,需要提供一种实现整体电子化交易的票据交易系统,以解决用户之间信息不对称的问题;同时,在票据交易系统中,如何实现交易数据的实时同步更新,不需要用户手动刷新就能够及时获取变化的交易信息,特别是在用户数量比较多,客户端数量比较多的时候,一个交易数据的变化,可能需要实时显示在多客户端,对系统处理速度提出了很高的要求。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于事件的流程处理方法及相关系统。第一方面,本专利技术实施例提供一种基于事件的流程处理方法,包括:当客户端监听到预设表单的画面按钮触发事件时,根据所述表单的数据生成对应的客户端事件;对所述客户端事件进行序列化并处理,并在处理后判断是否需要继续发送给服务器进行处理;若确定需要,则将处理后的客户端事件转换成对应的服务器事件并在序列化并发送给连接服务器,以便连接服务器自身处理或转由应用服务器处理;当连接服务器接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;当确定为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;当确定为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;当接收到应用服务器返回的所述服务器事件对应的交易处理结果时,根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格;当客户端接收到连接服务器返回的处理结果时,将接收到的处理结果由服务器事件转换成对应的客户端事件,执行对应的方法,更新客户端界面。在一个实施例中,所述视图模型通过下述方式注册:在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。在一个实施例中,在客户端已登录且与连接服务器连接后,还包括:为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型,具体包括:在所述客户端对应的会话模型对象中新建对应的视图模型。在一个实施例中,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据,包括:将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。在一个实施例中,所述基于事件的流程处理方法,还包括:当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格中的位置作为上游标和下游标并保存;当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;更新所保存的上游标和下游标。在一个实施例中,更新处理结果中对应的视图模型的数据,包括:在视图模型中增加数据、删除数据和修改数据;在视图模型中增加数据和删除数据之后,还包括:针对视图模型中增加的或删除的数据以及其之后的数据,更新其位置信息。在一个实施例中,根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端,当需要时,将更新的数据推送给客户端,包括:判断发生更新的数据在整个表格中的位置,是否位于所记录的所述上游标和下游标之间;若是,将从上游标之后的n条表格数据重新推送给所述客户端。在一个实施例中,所述确定所述事件是否为自身需要处理的服务器事件,包括:所述连接服务器判断所述服务器事件的类型是否与自身预先注册的事件类型一致,若一致,则确定所述服务器事件属于自身需要处理的服务器事件;否则,确定所述服务器事件不属于自身需要处理的服务器事件。在一个实施例中,当所述服务器事件为多个时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理,包括:将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。在一个实施例中,所述连接服务器返回的处理结果包括:连接服务器返回的提交应用服务器成功或失败的结果;连接服务器返回的由连接服务器自身完成的数据查询结果;连接服务器返回的由应用服务器处理后通过连接服务器返回的数据处理结果;将接收到的处理结果由服务器事件转换成对应的客户端事件,执行对应的方法,更新客户端界面,包括:将接收的处理结果的SeverEvent转换成新的预设的ApplicationEvent事件,执行预设的表单的processAppliactionEvent方法,更新客户端的界面。在一个实施例中,连接服务器返回的由应用服务器处理后通过连接服务器返回的数据处理结果时,所述服务器返回的处理结果中包括:发生数据更新的视图模型的标识以及对应的更新的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;所述更新客户端界面,包括:根据所述视图模型的标识,使用所述更新的数据更新所述视图模型对应的表格内容。本文档来自技高网...
一种基于事件的流程处理方法及相关系统

【技术保护点】
一种基于事件的流程处理方法,其特征在于,包括:当客户端监听到预设表单的画面按钮触发事件时,根据所述表单的数据生成对应的客户端事件;对所述客户端事件进行序列化并处理,并在处理后判断是否需要继续发送给服务器进行处理;若确定需要,则将处理后的客户端事件转换成对应的服务器事件并在序列化并发送给连接服务器,以便连接服务器自身处理或转由应用服务器处理;当连接服务器接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;当确定为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;当确定为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;当接收到应用服务器返回的所述服务器事件对应的交易处理结果时,根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格;当客户端接收到连接服务器返回的处理结果时,将接收到的处理结果由服务器事件转换成对应的客户端事件,执行对应的方法,更新客户端界面。...

【技术特征摘要】
2016.07.25 CN 2016105919651;2016.07.28 CN 201610601.一种基于事件的流程处理方法,其特征在于,包括:当客户端监听到预设表单的画面按钮触发事件时,根据所述表单的数据生成对应的客户端事件;对所述客户端事件进行序列化并处理,并在处理后判断是否需要继续发送给服务器进行处理;若确定需要,则将处理后的客户端事件转换成对应的服务器事件并在序列化并发送给连接服务器,以便连接服务器自身处理或转由应用服务器处理;当连接服务器接收到客户端发送的服务器事件时,确定所述事件是否为自身需要处理的服务器事件;当确定为是时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理;当确定为否时,将所述服务器事件发送给消息服务器,以便其他应用服务器从所述消息服务器读取并处理;当接收到应用服务器返回的所述服务器事件对应的交易处理结果时,根据所述处理结果的分发列表,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据;所述视图模型是客户端对需要实时刷新的表格预先在连接服务器中注册的镜像;根据所述客户端当前显示的页面内容,判断是否需要将更新的数据推送给所述客户端;当需要时,将发生数据更新的所述视图模型的标识以及对应的更新的数据推送给客户端,以便客户端根据所述视图模型的标识更新本地对应的表格;当客户端接收到连接服务器返回的处理结果时,将接收到的处理结果由服务器事件转换成对应的客户端事件,执行对应的方法,更新客户端界面。2.如权利要求1所述的方法,其特征在于,所述视图模型通过下述方式注册:在客户端已登录且与连接服务器连接后,当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型;所述视图模型对应所述客户端请求加载的页面中需要实时刷新的表格;所述视图模型注册请求,由客户端请求加载的页面中包含需要实时刷新表格的页面触发。3.如权利要求2所述的方法,其特征在于,在客户端已登录且与连接服务器连接后,还包括:为客户端分配对应的会话模型对象;所述会话模型对象记录有客户端的标识、客户端与连接服务器之间socket连接的标识;当接收到客户端发送的视图模型注册请求时,为所述客户端新建对应的视图模型,具体包括:在所述客户端对应的会话模型对象中新建对应的视图模型。4.如权利要求3所述的方法,其特征在于,更新本地缓存中所述分发列表中每个客户端与所述处理结果对应的视图模型的数据,包括:将所述处理结果所涉及所述视图模型的标识和对应更新的数据,发送给所述客户端的会话模型对象;通过所述会话模型对象将所述处理结果发送给对应的视图模型,由所述视图模型更新自身数据。5.如权利要求1所述的方法,其特征在于,所述方法还包括:当接收客户端的第一次发送的页面加载请求时,确定需要发送的表格数据的条数n,并发送n条表格数据作为当前显示数据;分别记录所述当前显示页面中第一条数据和最后一条数据在所述表格中的位置作为上游标和下游标并保存;当接收客户端的表格分页刷新请求时,从所述下游标后面的第一条数据开始顺序向后获取n条表格数据,或者从所述上游标前面的最后一条数据开始顺序向前获取n条表格数据;将所述表格数据发送给客户端;更新所保存的上游标和下游标。6.如权利要求1所述的方法,其特征在于,当所述服务器事件为多个时,将所述服务器事件发送给所述连接服务器本地预设的处理该服务器事件的事件处理类进行处理,包括:将各个服务器事件按照预设的优先级级别,分别缓存于对应级别的队列中,每个队列中服务器事件按照接收的时间先后排列;按照优先级的高低顺序,依次从不同级别的队列中取出该队列中的服务器事件,并将所述服务器事件分发至对应级别的事件处理线程;通过所述事件处理线程调用服务器事件对应的事件处理类,对所述服务器事件进行处理。7.如权利要求1所述的方法,其特征在于,所述连接服务器返回的处理结果包括:连接服务器返回的提交应用服务器成功或失败的结果;连接服务器返回的由连接服务器自身完成的数据查询结果;连接服务器返回的由应用服务器处理后通过连接服务器返回的数据处理结果;将接收到的处理结果由服务器事件转换成对应的客户端事件,执行对应的方法,更新客户端界面,包括:将接收的处理结果的SeverEvent转换成新的预设的ApplicationEvent事件,执行预设的表单的processAppliactionEvent方法,更新客户端的界面。8.如权利要求1所述的方法,其特征在于,...

【专利技术属性】
技术研发人员:方敏
申请(专利权)人:武汉票据交易中心有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1