如图所示:
在对渠道分析的时候,想查看渠道的详细信息,每个渠道的下载方式不同,信息编号也不同,这就需要构建动态数据列表,EASYUI动态解析列表。
1、前台页面:
给分析按钮注册事件。
function detailWid() { var rows = $('#admin_adinstallbywid_datagrid').datagrid('getChecked'); wid = rows[0].wid; time= rows[0].time; $.ajax({ type:"POST", dataType:"json", async:true, url:'${pageContext.request.contextPath}/adInstallResultAction!getAdInstallResultByDetail.action?wid='+wid+'&time='+time, success:function(response){ $("#analyseDetail").datagrid( {columns:new Array(response.columns), //动态解析后台columns title:wid+"渠道分析" } ).datagrid("loadData",response); } }); $('#admin_adresultbydetail_datagrid').dialog('open'); }
2、后台Service层构建前台返回数据,由于不是实体类,就用普通数组存储。
public DataGrid datagridByDetail(PageUse pageUse) { DataGrid dg = new DataGrid(); //分组查询所有adid String hql="select count(adid),adid from AdInstallResult where wid='"+pageUse.getWid()+"' and substring(time,1,10)='"+pageUse.getTime()+"' group by adid"; List list=adInstallResultDao.find(hql); Map<String,String> map=new HashMap<String,String>(); for(int i=0;i<list.size();i++) { Object[] object=(Object[])list.get(i); map.put(String.valueOf(object[1]), String.valueOf(object[0])); } String hql2="select count(adflag),adflag from AdInstallResult where wid='"+pageUse.getWid()+"' and substring(time,1,10)='"+pageUse.getTime()+"' group by adflag"; List list2=adInstallResultDao.find(hql2); for(int j=0;j<list2.size();j++) { Object[] object=(Object[])list2.get(j); map.put(String.valueOf(object[1]), String.valueOf(object[0])); } //遍历map List<Object> rowsList=new ArrayList<Object>(); List<Object> columnList=new ArrayList<Object>(); rowsList.add(map); Map<String,Object> columnMap; for(Iterator iter=map.entrySet().iterator();iter.hasNext();) { //动态构建columns列 Map.Entry<String, String> entry=(Map.Entry<String, String>)iter.next(); columnMap=new HashMap<String,Object>(); columnMap.put("field", entry.getKey()); columnMap.put("title", entry.getKey());; columnMap.put("width", "100"); columnList.add(columnMap); } dg.setTotal(1); dg.setRows(rowsList); dg.setColumns(columnList); return dg; }
相关推荐
SSH+EasyUI简单的具有两层导航菜单的权限管理系统
ERP Demo SSH+MySQL+easyUI ERP Demo SSH+MySQL+easyUI ERP Demo SSH+MySQL+easyUI ERP Demo SSH+MySQL+easyUI
SSH框架+easyUi的增删改查,很适合新手借鉴
ssh+easyui组合,主要用于自己的学习及其项目框架开发基础
基于SSH2+Maven+EasyUI+MySQL技术实战开发易买网电子商务交易平台4
我在淘宝花了200块,希望大家好好珍惜
SSH+EasyUi项目demo简单 清晰,适合新手
SSH+Easyui之TreeGrid树形展现数据源码
SSH+easyUI整合项目,对Jquery-easyui的学习非常有帮助
完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统...
InterviewSys SSH+easyUI+MySql Demo已经写好基本部分,后续继续更新
本小项目主要基于ssh+easyui,后台使用ssh,前台使用easyui,实现列表的分页显示,可以对用户以及其所属的通讯录进行增删改查的管理,删除通讯录的同时会级联删除其所属的通讯录名单。
easyui+ssh(增删改模糊查询,导出数据),里面已经加了注解需要的可以自行下载学习。
SSH+EasyUI实现学生管理系统!!!
本系统使用ssh+easyui集合而成,内附使用说明,解除了您的使用烦恼,让您更好的使用并了解改系统。
一个基于SSH和easyUI开发的管理系统,把easyUI的各种插件,无缝融合到项目当中去,有数据库文件
SSHE示例项目是一个由Eclipse Kepler创建,Struts2.3.x+Spring3.2.x+Hibernate4.2.x+CXF2.7.x+EasyUI1.3.4+Maven架构的示例程序 当前示例演示了包括:权限控制、超大附件文件上传、EasyUI基本组件使用等等功能,具体...
基于SSH2+Maven+EasyUI+MySQL技术实战开发易买网电子商务交易平台2
基于SSH2+Maven+EasyUI+MySQL技术实战开发易买网电子商务交易平台
管理系统系列--基于SSH+easyUI+ActiveMQ+MySQL的校园宿舍管理系统。 分为系统管理员、楼宇管理