一种实时数据处理方法、装置、设备和存储介质与流程

文档序号:22844818发布日期:2020-11-06 16:48阅读:121来源:国知局
一种实时数据处理方法、装置、设备和存储介质与流程

本发明涉及互联网技术领域,尤其涉及一种实时数据处理方法、装置、设备和存储介质。



背景技术:

目前系统软件领域中,在很多应用场景中都需要进行数据计算。这些场景中的数据计算通常会有比较复杂的计算逻辑。

在现有技术中,用户实际应用时,由于业务场景不同,计算逻辑、参与计算的字段、参数也是多种多样。而按照传统方式,需要开发人员在编码时,规约好固定公式,极大的提高了开发和维护成本,同时也降低了用户使用的灵活性。如果通过固定公式+人工辅助的方式进行计算,在效率和准确性上都存在问题。

因此,需要一种能够适用于多种业务场景的实时数据处理方案,从而能够满足多样化的业务数据处理需求。



技术实现要素:

本发明实施例提供一种实时数据处理方法、装置、设备和存储介质,用以实现满足多样化的业务实时数据处理需求。

第一方面,本发明实施例提供一种实时数据处理方法,该方法包括:

响应于用户的加载操作,在html页面中加载可监控字段;

根据计算逻辑,为所述可监控字段和计算参数绑定js监听事件;

响应于所述js监听事件的触发操作,按照触发操作后的计算逻辑进行数据处理。

可选地,为所述可监控字段和计算参数绑定js监听事件之后,还包括:

响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件。

可选地,所述可监控字段包括:日期类型字段;

所述响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件,包括:

响应于用户针对所述日志类型字段的日期规则的修改操作,触发对应的js监听事件。

可选地,所述可监控字段包括:数字类型字段;

所述响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件,包括:

响应于用户针对所述数字类型字段的数字内容的修改操作,触发对应的js监听事件;或者,

响应于用户针对所述数字类型字段的小数位数的修改操作,触发对应的js监听事件。

可选地,所述计算逻辑包括嵌套引用逻辑;

所述响应于用户针对所述数字类型字段的数字内容的修改操作,触发对应的js监听事件,包括:

响应于用户针对所述数字类型字段的数据嵌套引用逻辑的修改操作,触发对应的js监听事件。

可选地,所述计算参数包括:求和、求最大值、求最小值、求平均值。

可选地,所述响应于所述js监听事件的触发操作,按照所述触发操作后的计算逻辑进行数据处理,包括:

确定所述可监控字段和/或计算参数中至少一个修改操作,触发对应的js监听事件;

按照触发操作后的所述可监控字段和/或计算参数进行数据处理。

第二方面,本发明实施例提供一种实时数据处理装置,所述装置包括:

加载模块,用于响应于用户的加载操作,在html页面中加载可监控字段;

绑定模块,用于根据计算逻辑,为所述可监控字段和计算参数绑定js监听事件;

处理模块,用于响应于所述js监听事件的触发操作,按照触发操作后的计算逻辑进行数据处理。

第三方面,本发明实施例提供一种电子设备,包括:处理器、存储器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现第一方面中任一项所述的实时数据处理方法。

第四方面,本发明实施例提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器执行包括以下的动作:

响应于用户的加载操作,在html页面中加载可监控字段;

根据计算逻辑,为所述可监控字段和计算参数绑定js监听事件;

响应于所述js监听事件的触发操作,按照触发操作后的计算逻辑进行数据处理。

本发明实施例中,在html页面中展示相关计算数据,比如,可监控字段、计算参数、计算函数、运算符等等。在打开html页面后加载可监控字段,然后根据计算逻辑为可监控字段和计算参数绑定js(javascript,一种脚本语言)监听事件。如果监听到js监听事件的触发操作,则按照触发后的计算逻辑进行数据处理。通过上述技术方案,在html页面展示可监控的自定义字段,用户点击选中监控字段、运算符、计算函数等自定义计算公式;通过javascript绑定监听事件,当监听到用户改变字段或计算参数时,触发监听事件,根据触发事件后的计算逻辑计算出结果,并实时展示给用户,能够满足多样化业务数据实时处理与展示需求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种实时数据处理方法的流程示意图;

图2为本申请实施例提供的一种实时数据处理装置的结构示意图;

图3为本申请实施例提供的一种计算逻辑设置的流程示意图;

图4为本申请实施例提供的一种计算方法的流程示意图;

图5为与图2所述实施例提供的实时数据处理装置对应的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。

目前系统软件领域中,根据不同的场景可能会产生不同的数据,但需要的结果是通过同一套计算逻辑来实现的。目前还没有一种方法能够实时监控来源数据,并实时计算出对应结果。遇到不同的数据时,都需要借助人工辅助来处理填写,在效率和准确性上都存在问题。

图1为本申请实施例提供的一种实时数据处理方法的流程示意图,如图1所示,该方法包括以下步骤:

101:响应于用户的加载操作,在html页面中加载可监控字段。

102:根据计算逻辑,为所述可监控字段和计算参数绑定js监听事件。

103:响应于所述js监听事件的触发操作,按照触发操作后的计算逻辑进行数据处理。

在实际应用中,这里所说的可监控字段,可以是数字类型字段和/或日期类型字段。其中,日期类型字段又可以有很多种格式,可以包含天、时、分、秒等多种日期类型显示格式。在html页面,可以由用户手动填写,也可以从预设模板中以可选的方式选择所需的日期显示格式。

绑定js监听事件的方式可以有多种,比如,一种在dom元素中直接绑定,这里的dom元素,可以理解为html标签,javascript支持在标签中直接绑定事件;另一种在javascript代码中绑定,在javascript代码中(即<script>标签内)绑定事件可以使javascript代码与html标签分离,文档结构清晰;再一种绑定事件监听函数,绑定事件是用addeventlistener()或attachevent()来绑定事件监听函数。

在本申请一个或者多个实施例中,为所述可监控字段和计算参数绑定js监听事件之后,还包括:响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件。不同的修改对象的触发条件不同,具体来说,

若所述可监控字段为日期类型字段,则所述响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件,包括:响应于用户针对所述日志类型字段的日期规则的修改操作,触发对应的js监听事件。

例如,日期类型字段,可选择按照工作日或自然日的方式,结合具体计算规则进行计算。用户可设置工作日规则,时间区间计算时,可动态过滤掉非工作日的时间,仅计算出时间区间内工作日时间差值;得到的计算结果可以设置按天、时、分格式展示。当监听到这些字段修改后触发js监听事件,然后可以实时刷新计算结果,也可以在用户修改完成后统一刷新计算结果并实时显示。

在本申请一个或者多个实施例中,所述可监控字段还可以为数字类型字段;

所述响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件,包括:

响应于用户针对所述数字类型字段的数字内容的修改操作,触发对应的js监听事件;或者,

响应于用户针对所述数字类型字段的小数位数的修改操作,触发对应的js监听事件。

在实际应用中,不同的业务场景可能具有相似的计算逻辑,但是,有一些数据需要修改,比如,不同商品的销售提成,由于品类不同,提成比例不同,但是相对于销售员来说,工资构成还是相同的。因此,需要针对商品将数字类型字段做出适应性修改。不仅可以修改数字内容,还可以对数字的小数位数进行修改,从而能够满足用户实际需求。

在实际应用中,通过用户拖拽方式,自定义字段。编辑计算公式时,通过javascript获取页面中可参与计算的字段,并展示在可选字段列表中。用户通过点击监控字段、运算符等内容设置运算表达式,也可手动输入常量、运算符等;保存公式时,通过javascript中eval()函数校验表达式格式是否正确。

在本申请一个或者多个实施例中,所述计算逻辑包括嵌套引用逻辑;

所述响应于用户针对所述数字类型字段的数字内容的修改操作,触发对应的js监听事件,包括:响应于用户针对所述数字类型字段的数据嵌套引用逻辑的修改操作,触发对应的js监听事件。

例如,用户自定义计算公式时,可将a公式的计算结果,作为b公式中的某一个字段,从实现计算公式嵌套使用。在设置嵌套引用逻辑的时候,可以由用户在编辑器中自己输入引用关系,也可通过选项完成嵌套引用关系的配置。

在本申请一个或者多个实施例中,所述计算参数包括:求和、求最大值、求最小值、求平均值。此外,还可以包括常规计算参数,比如,加减乘除。上述计算参数,可以组合设置,也可以单独设置。

在本申请一个或者多个实施例中,所述响应于所述js监听事件的触发操作,按照所述触发操作后的计算逻辑进行数据处理,包括:确定所述可监控字段和/或计算参数中至少一个修改操作,触发对应的js监听事件;按照触发操作后的所述可监控字段和/或计算参数进行数据处理。

在实际应用中,响应于js监听事件的触发动作,可以是在用户修改字段或者计算参数之后立即响应并刷新,这样可以自动完成实时数据处理以及显示的效果。当然,也可以基于用户实际操作后进行实时数据处理和显示,比如,用户最后点击保存按钮,用户自定义的公式将会保存到页面布局信息中,并展示触发事件后处理得到的数据处理结果。

基于同样的思路,本申请实施例还提供一种实时数据处理装置,如图2为本申请实施例提供的一种实时数据处理装置的结构示意图。所述装置包括:

加载模块21,用于响应于用户的加载操作,在html页面中加载可监控字段。

绑定模块22,用于根据计算逻辑,为所述可监控字段和计算参数绑定js监听事件。

处理模块23,用于响应于所述js监听事件的触发操作,按照触发操作后的计算逻辑进行数据处理。

可选地,还包括:触发模块24,用于响应于所述可监控字段和/或计算参数的修改操作,触发对应的所述js监听事件。

可选地,可监控字段包括:日期类型字段;

触发模块24用于响应于用户针对所述日志类型字段的日期规则的修改操作,触发对应的js监听事件。

可选对,所述可监控字段包括:数字类型字段;

触发模块24用于响应于用户针对所述数字类型字段的数字内容的修改操作,触发对应的js监听事件;或者,

响应于用户针对所述数字类型字段的小数位数的修改操作,触发对应的js监听事件。

可选地,所述计算逻辑包括嵌套引用逻辑;

触发模块24用于响应于用户针对所述数字类型字段的数据嵌套引用逻辑的修改操作,触发对应的js监听事件。

可选地,所述计算参数包括:求和、求最大值、求最小值、求平均值。

可选地,处理模块23,用于确定所述可监控字段和/或计算参数中至少一个修改操作,触发对应的js监听事件;按照触发操作后的所述可监控字段和/或计算参数进行数据处理。

为了便于理解,下面分别结合实施例进行说明。

图3为本申请实施例提供的一种计算逻辑设置的流程示意图。

获取页面中可参与计算的所有字段,加载至可监控字段列表中;

对监控字段列表中所有监控字段、运算符、常量、函数等等绑定js监听事件,点击后可直接添加至表达式编辑框中;

函数设置入口绑定js事件,点击后跳出弹框用于设计函数表达式,点击确认后添加至表达式编辑框中并保存;在实际应用中,表达式输入框每添加一个字段或运算符后,重新获得焦点,便于后续字段添加。

通过javascript自定义表达式格式校验函数,需要对公式格式合法性进行校验,校验通过后监控字段绑定js事件,点击保存公式时。

图4为本申请实施例提供的一种计算方法的流程示意图。

在用户对公式进行编辑过程中,时刻监控字段的改变,若发现字段或者计算参数发生改变,则触发js事件,根据触发后计算参数、字段等计算逻辑进行计算。在得到的计算结果中,不可避免的会出现包含小数为的计算结果,也可以在html页面中设置小数位数等相关格式,开启小数位显示设置入口,根据用户设置的位数,获取计算结果,通过四舍五入的方式,使用js函数对计算结果进行转换,更新结果值等等。为了满足实际操作需求,表达式输入框支持快速编辑,输入框中输入#后可以快速选择自定义字段;表达式内容支持一键清空,点击清空按钮后,通过js清空表达式输入框中展示的内容,同时清除js中已保存的表达式详情。

此外,监控字段类型还可以是日期类型字段,可选择按照工作日或自然日的方式,结合具体计算规则进行计算。比如,日期类型字段,计算结果可以设置按天、时、分格式展示;

根据表达式内容,对监控的各个字段绑定js事件;当监控字段内容改变时,触发对应js事件,根据表达式内容,实时计算出结果,并自动更新展示的值。

通过上述方案,在html页面中展示相关计算数据,比如,可监控字段、计算参数、计算函数、运算符等等。在打开html页面后加载可监控字段,然后根据计算逻辑为可监控字段和计算参数绑定js(javascript,一种脚本语言)监听事件。如果监听到js监听事件的触发操作,则按照触发后的计算逻辑进行数据处理。通过上述技术方案,在html页面展示可监控的自定义字段,用户点击选中监控字段、运算符、计算函数等自定义计算公式;通过javascript绑定监听事件,当监听到用户改变字段或计算参数时,触发监听事件,根据触发事件后的计算逻辑计算出结果,并实时展示给用户,能够满足多样化业务数据实时处理与展示需求。

在一个可能的设计中,上述图2所示实时数据处理装置的结构可实现为一电子设备,如图5所示为与图2所述实施例提供的实时数据处理装置对应的电子设备的结构示意图,该电子设备可以包括:处理器51、存储器52,所述存储器52用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器51执行时实现前述各实施例中客户端所执行的各步骤。

可选地,该电子设备中还可以包括通信接口53,用于与其他设备进行通信。

另外,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质。当计算机可读存储介质存储计算机程序,且计算机程序被一个或多个处理器执行时,致使一个或多个处理器执行相应图1所示方法实施例中的各步骤。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程更新设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1