企业级系统应用,高级组合查询示例讲解 - Jeecg实战

企业级系统应用,高级组合查询示例讲解 - Jeecg实战 

                                                                                              ---数据多维度查询

经常会有人问:JEECG高级查询怎么用,实现机制是怎样的?

今天为大家揭开这层面纱,让大家了解实质,使用它更快速的构建大家需要的业务

 一、高级查询应用场景

      常规的查询我们一般都是针对单表的查询,例如下图,通过对某张表的数据检索,通过多个字段的值过滤来进行筛选数据,这种场景是大家经常遇到的,也是比较简单的一种实现,在JEECG快速开发平台中,通过UI标签t:dgCol中属性query=“true”的设置就可实现,一种常规的使用方式。如果是对于一些复杂的数据结构,例如一对一、一对多表这种关联结构的数据表,我们要进行数据过滤筛选,不局限于其中某张表单数据的查询,而是通过多张表字段进行组合查询,多维度过滤数据,要怎么实现呢?

        

          针对多维度过滤数据JEECG也给大家提供了比较方便快捷的处理方式,给大家集成了一种高级查询的功能。

          高级查询可以支持哪些业务数据的过滤呢?

         (1)单表数据过滤,支持单表多字段and条件的过滤,以及多字段or条件的过滤

         (2)一对一,一对多主子表联合查询,支持主表字段和子表字段联合and条件过滤,以及or条件过滤

不多说先上图:

图1:单表数据过滤

图2:主子表字段联合查询

二、高级组合查询集成

下面切入正题如何集成高级查询功能

1、先说单表集成高级查询,JEECG集成比较简单,只需要一个属性搞定,t:datagrid标签中设置属性superQuery="true"即可搞定。简单意外不?o^_^o

2、主子表结构数据表集成

主子表结构集成高级查询比较复杂些,需要【Online开发--高级组合查询】配置来配合使用。以订单表、订单详情表这种主子结构的表单为例,订单表为主表,订单详情表为子表,为一对多的模式

第一步:

【Online开发--高级组合查询】配置组合查询规则

(1)设置组合规则编码,名称,以及该组合查询涉及的相关表

设置查询规则编码为:jfrom_order,该规则对应的表有jfrom_order、jfrom_order_line,其中jfrom_order(订单表)为主表,jfrom_order_line(订单详细表)为子表,jfrom_order_line与主表jfrom_order的关联外键是orderid

第二步:

设置规则表单需要过滤的字段

第三步:

查询列表集成高级查询规则,t:datagrid标签中设置属性complexSuperQuery="jfrom_order" ,complexSuperQuery的值为高级组合查询规则编码,此时列表上方会多出一个“高级查询构造器”的按钮,此时搞定收工,可以进行功能测试:

例如:查询购买过iphoneX的人,通过子表订单详情表商品名称查询

点击查询,即可通过子表字段过滤出需要的数据

至此,主子表结构高级查询集成完毕。

三、总结

      以上功能在JEECG开发平台可以进行快速集成,减少搭建繁琐的编码工作,只需要简单的配置即可轻松实现,方便快捷,大家根据自己的业务赶快集成吧。

  

猜你喜欢

转载自blog.csdn.net/zhangdaiscott/article/details/81276670