System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据过滤,特别是一种动态过滤列表数据的方法和系统。
技术介绍
1、在现有的数据处理和接口设计中,数据过滤通常是一个关键功能,它允许系统根据特定规则或条件来限制返回给请求者的数据。然而,当前的技术实现中存在一些局限性和不足之处,这些限制影响了数据过滤的灵活性和效率。
2、大多数系统仅支持基于用户身份的简单过滤,如根据用户id来过滤数据。这种方法虽然适用于一些场景,但无法满足复杂业务场景下的多样化需求。例如,在电子商务系统中,可能需要根据订单号、金额、商品类别等多个维度来过滤订单数据,而现有技术无法提供这样的灵活性。
3、其次,现有技术通常不支持单独修改某个接口的过滤规则。一旦接口的数据过滤规则被定义,就需要对整个系统进行修改才能更改该规则。这不仅增加了开发和维护的复杂性,而且可能导致不必要的系统停机或性能下降。在快速变化的业务环境中,这种限制可能导致系统无法及时响应业务变化,从而影响用户体验和业务效率。
4、然而,在实际开发中,如何高效地实现对接口返回的列表数据进行过滤,成为了一个亟待解决的问题。
技术实现思路
1、针对上述缺陷,本专利技术的目的在于提出种动态过滤列表数据的方法和系统,以解决不支持单独修改某个接口的过滤规则和不能动态编定规则,缺少灵活性的问题。
2、为达此目的,本专利技术采用以下技术方案:
3、一种动态过滤列表数据的方法,包括:
4、为需要进行数据过滤的接口添加过滤标识,所述过滤标识
5、根据需求设定若干组过滤参数,为所述需要进行数据过滤的接口添加若干组所述过滤参数,将所述需要进行数据过滤的接口对应的接口路径和所述过滤参数的映射存储到存储空间,每组所述过滤参数对应一个子过滤条件;
6、访问所述需要进行数据过滤的接口,从存储空间中获取若干组所述需要进行数据过滤的接口对应的过滤参数并生成若干个子过滤条件,根据子过滤条件生成总过滤条件,根据所述总过滤条件对所述需要进行数据过滤的接口中所要返回的数据进行过滤。
7、优选地,所述为需要进行数据过滤的接口添加过滤标识包括:
8、创建自定义注解,声明自定义注解的属性,将所述自定义注解作为所述过滤标识;
9、为所述自定义注解添加元注解,所述元注解用于控制自定义注解的行为和作用范围;
10、为所述需要进行数据过滤的接口添加所述自定义注解,并将所述接口路径设为所述属性的属性值。
11、优选地,所述从存储空间中获取所述过滤参数还包括:使用第一注解为含有所述过滤标识的接口声明切点;
12、使用第二注解,在所述切点所匹配的方法执行之前和执行之后从存储空间中获取所述过滤参数。
13、优选地,所述过滤参数包括:过滤名称、过滤字段、过滤比较符、过滤字段值以及过滤连接符;
14、所述过滤连接符用于将所述子过滤条件连接成所述总过滤条件。
15、优选地,所述为所述需要进行数据过滤的接口添加若干组所述过滤参数之前包括:
16、从存储空间中获取所述需要进行数据过滤的接口对应的接口路径对应的过滤参数;
17、根据待添加的过滤参数中的过滤字段、过滤比较符、过滤字段值生成若干个待添加子过滤条件,根据所述需要进行数据过滤的接口对应的接口路径对应的过滤参数中的过滤字段、过滤比较符、过滤字段值生成若干个对比子过滤条件;
18、根据每个所述待添加子过滤条件和其对应的过滤连接符逐一与所述对比子过滤条件进行判断是否产生冲突,若产生冲突,则提示产生冲突对应的过滤参数添加出错,否则添加成功。
19、优选地,所述从存储空间中获取若干组所述需要进行数据过滤的接口对应的过滤参数并生成若干个子过滤条件,根据子过滤条件生成总过滤条件包括:
20、获取所述需要进行数据过滤的接口的所述自定义注解的属性值,根据所述属性值从存储空间中获取若干组所述需要进行数据过滤的接口对应的过滤参数;
21、将所述需要进行数据过滤的接口对应的过滤参数中的过滤字段、过滤比较符和过滤字段值进行拼接,生成子过滤条件;
22、根据所述过滤连接符对所述子过滤条件进行连接,生成所述总过滤条件。
23、一种动态过滤列表数据的系统,包括:
24、过滤标识添加模块,用于为需要进行数据过滤的接口添加过滤标识;
25、过滤参数设定模块,用于根据需求设定若干组过滤参数,为所述需要进行数据过滤的接口添加若干组所述过滤参数,将所述需要进行数据过滤的接口对应的接口路径和所述过滤参数的映射存储到存储空间;
26、过滤条件生成模块,用于从存储空间中获取若干组所述需要进行数据过滤的接口对应的过滤参数并生成若干个子过滤条件,根据子过滤条件生成总过滤条件,根据所述总过滤条件对所述需要进行数据过滤的接口中所要返回的数据进行过滤。
27、进一步地,所述过滤标识添加模块,具体用于:
28、创建自定义注解,声明自定义注解的属性,将所述自定义注解作为所述过滤标识;为所述自定义注解添加元注解,所述元注解用于控制自定义注解的行为和作用范围;为所述需要进行数据过滤的接口添加所述自定义注解,并将所述接口路径设为所述属性的属性值;
29、所述过滤参数包括:过滤名称、过滤字段、过滤比较符、过滤字段值以及过滤连接符;所述过滤连接符用于将所述子过滤条件连接成所述总过滤条件。
30、进一步地,所述过滤参数设定模块,具体用于:
31、使用第一注解为含有所述过滤标识的接口声明切点;使用第二注解,在所述切点所匹配的方法执行之前和执行之后从存储空间中获取所述过滤参数;
32、从存储空间中获取所述需要进行数据过滤的接口对应的接口路径对应的过滤参数;
33、根据待添加的过滤参数中的过滤字段、过滤比较符、过滤字段值生成若干个待添加子过滤条件,根据所述需要进行数据过滤的接口对应的接口路径对应的过滤参数中的过滤字段、过滤比较符、过滤字段值生成若干个对比子过滤条件;
34、根据每个所述待添加子过滤条件和其对应的过滤连接符逐一与所述对比子过滤条件进行判断是否产生冲突,若产生冲突,则提示产生冲突对应的过滤参数添加出错,否则添加成功。
35、所述过滤条件生成模块,具体用于:
36、获取所述需要进行数据过滤的接口的所述自定义注解的属性值,根据所述属性值从存储空间中获取若干组所述需要进行数据过滤的接口对应的过滤参数;
37、将所述需要进行数据过滤的接口对应的过滤参数中的过滤字段、过滤比较符和过滤字段值进行拼接,生成子过滤条件;
38、根据所述过滤连接符对所述子过滤条件进行连接,生成所述总过滤条件。
39、上述技术方案中的一个技术方案具有如下优点或有益效果:
40、通过为接口添加过滤标识和设定过滤参数,可以本文档来自技高网...
【技术保护点】
1.一种动态过滤列表数据的方法,其特征在于,包括:
2.根据权利要求1所述的动态过滤列表数据的方法,其特征在于,所述为需要进行数据过滤的接口添加过滤标识包括:
3.根据权利要求2所述的动态过滤列表数据的方法,其特征在于,所述从存储空间中获取所述过滤参数还包括:
4.根据权利要求2所述的动态过滤列表数据的方法,其特征在于,所述过滤参数包括:过滤名称、过滤字段、过滤比较符、过滤字段值以及过滤连接符;
5.根据权利要求4所述的动态过滤列表数据的方法,其特征在于,所述为所述需要进行数据过滤的接口添加若干组所述过滤参数之前包括:
6.根据权利要求4所述的动态过滤列表数据的方法,其特征在于,所述从存储空间中获取若干组所述需要进行数据过滤的接口对应的过滤参数并生成若干个子过滤条件,根据子过滤条件生成总过滤条件包括:
7.一种动态过滤列表数据的系统,其特征在于,包括:
8.根据权利要求7所述的动态过滤列表数据的系统,其特征在于,所述过滤标识添加模块,具体用于:
9.根据权利要求8所述的动态过滤列表数据
10.根据权利要求9所述的动态过滤列表数据的系统,其特征在于,所述过滤条件生成模块,具体用于:
...【技术特征摘要】
1.一种动态过滤列表数据的方法,其特征在于,包括:
2.根据权利要求1所述的动态过滤列表数据的方法,其特征在于,所述为需要进行数据过滤的接口添加过滤标识包括:
3.根据权利要求2所述的动态过滤列表数据的方法,其特征在于,所述从存储空间中获取所述过滤参数还包括:
4.根据权利要求2所述的动态过滤列表数据的方法,其特征在于,所述过滤参数包括:过滤名称、过滤字段、过滤比较符、过滤字段值以及过滤连接符;
5.根据权利要求4所述的动态过滤列表数据的方法,其特征在于,所述为所述需要进行数据过滤的接口添加若干组所述过滤参数之前包括:
【专利技术属性】
技术研发人员:麦嘉伟,张青明,刘伟文,
申请(专利权)人:西藏众陶联供应链服务有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。