jQuery MiniUI

 找回密码
 立即注册
查看: 5747|回复: 4
打印 上一主题 下一主题

根据不同查询条件过滤后,数据实时汇总问题。 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2019-1-6 11:00:16 |只看该作者 |倒序浏览
请问各位大神,遇到一个比较棘手的问题:窗体页面有4个输入查询条件的输入框:如图(如果我什么都不输入,直接点击查询,就会通过后台插入把所有其他表里符合条件的对象都插入到本报表里):

1.这个功能已实现(这个写的后台,忘了说了,本报表是树结构,固定的两层数据);
2.如果我输入了查询条件(过滤我是写的前台代码),会理想的筛选出想要的数据(数据源为上一步刚插入到数据库里的数据),这个功能也已经实现,如截图:

3.现在还有一个需求,就是每次查询后,有两列数据需要实时汇总,(因为筛选条件不同,每一次筛选后的子节点数量基本是不一样的),如截图:


卡到这里了,实时汇总不会写了。请大神指教。最好能贴出详细的代码。谢谢!
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2019-1-7 10:16:38 |只看该作者
列上加summaryType="sum"    //sum/avg/max/min
我们会自动计算


grid.on("drawsummarycell",function(e){
     if(e.field=="...."){
          e.cellHtml="总计:"+e.value;
     }
})

Rank: 2

板凳
发表于 2019-1-7 10:36:54 |只看该作者
dforce 发表于 2019-1-7 10:16
列上加summaryType="sum"    //sum/avg/max/min
我们会自动计算

您说的是整个列的汇总吧(底下的那个)?我主要是想问一下每次查询后父节点的汇总,如截图紫色的那些地方。

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

地板
发表于 2019-1-7 11:29:13 |只看该作者
本帖最后由 dforce 于 2019-1-7 14:53 编辑
  1. function syncParentNode() {
  2.             var nodes = tree.getData();
  3.             for (var i = 0, l = nodes.length; i < l; i++) {
  4.                 var node = nodes[i];
  5.                 var childNodes = tree.getChildNodes(node);
  6.                 //伪代码,假设是Duration字段
  7.                 var duration = 0;
  8.                 for (var j = 0, k = childNodes.length; j < k; j++) {              
  9.                     duration += parseInt(childNodes[j].Duration);
  10.                 }
  11.                 tree.updateRow(node,{Duration:duration})
  12.             }
  13.         
  14.         }
复制代码
比如说这样的方法,每次加载完或过滤调用一次计算。

yf云飞 发表于 2019-1-7 10:36
您说的是整个列的汇总吧(底下的那个)?我主要是想问一下每次查询后父节点的汇总,如截图紫色的那些地方 ...

只有统计行有这样的功能,其他行数据需要你自己处理更新。

Rank: 2

5#
发表于 2019-1-7 12:51:00 |只看该作者
dforce 发表于 2019-1-7 11:29
只有统计行有这样的功能,其他行数据需要你自己处理更新。

好的,知道了,谢谢

Archiver|普加软件

GMT+8, 2025-7-4 19:09 , Processed in 1.017754 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部