easyui DataGrid 工具类之 后台生成列
@SuppressWarnings({ "rawtypes", "unchecked" })
public Map<String, Object> getNewStatement(HttpServletRequest request,
HttpServletResponse response,Long grantId,String type,String operate,String columnJson) throws UnsupportedEncodingException, IOException {
List<Map<String,Object>> lMap=new ArrayList<Map<String,Object>>();
List<Map<String,Object>> cMap=new ArrayList<Map<String,Object>>();
lMap=grantApplicationPersistence.findBySql(sql.toString(),names, condition1);
Map <String, Object> colMap=new HashMap<String, Object>();
Map<String, Object> footer= getCountMap();
if("1".equals(type)){
List<List<ColumnVO>> frozenColumnsList =new ArrayList<List<ColumnVO>>();
List<ColumnVO> frozenColumnsList1= new ArrayList<ColumnVO>();
// field 字段名 名称 宽度 对齐方式 是否影藏 是否复选框 是否排序 是否冻结列
frozenColumnsList1.add(new ColumnVO("townCode","列名",80,"right",true,false,true,false,null));
frozenColumnsList1.add(new ColumnVO("townName","列名",80,"left",false,false,true,true,"linkStyle"));
frozenColumnsList.add(frozenColumnsList1);
colMap.put("frozenColumns", frozenColumnsList);
List<List<ColumnVO>> columnsList =new ArrayList<List<ColumnVO>>();
List<ColumnVO> columnsList1= new ArrayList<ColumnVO>();
List<ColumnVO> columnsList2= new ArrayList<ColumnVO>();
columnsList1.add(new ColumnVO("currentTotalSum","列名",80,"right",2,null));
columnsList1.add(new ColumnVO("currentTotalMoney","列名",80,"right",2,null,"valueToFixed"));
columnsList1.add(new ColumnVO("successPerson","列名",80,"right",2,null));
columnsList1.add(new ColumnVO("successMoney","列名",80,"right",2,null,"valueToFixed"));
columnsList1.add(new ColumnVO("failPerson","列名",80,"right",2,null,"nonzeroWarning"));
columnsList1.add(new ColumnVO("failMoney","列名",80,"right",2,null,"nonzeroWarning"));
columnsList1.add(new ColumnVO("updatePerson","列名",80,"right",2,null));
for (int j = 0; j < bankList.size(); j++) {
columnsList1.add(new ColumnVO("",bankList.get(j).get("name").toString(),80,"",null,2));
columnsList2.add(new ColumnVO("person"+bankList.get(j).get("code"),"列名",80,"right","nonzeroWarning"));
columnsList2.add(new ColumnVO("money"+bankList.get(j).get("code"),"列名",80,"right","nonzeroWarningFixed"));
footer.put("person"+bankList.get(j).get("code"), 0);
footer.put("money"+bankList.get(j).get("code"), 0);
}
columnsList.add(columnsList1);
columnsList.add(columnsList2);
colMap.put("columns", columnsList);
}
Set key=footer.keySet();
for (Map<String, Object> map : lMap) {
for (Object object : key) {
if(!"townCode".equals(object.toString())){
if(!"townName".equals(object.toString())){
double num=Double.valueOf(Assert.isNotEmpty(footer.get(object.toString()))==true?footer.get(object.toString()).toString():"0");
double a= Assert.isNotEmpty(map.get(object))?Double.valueOf(map.get(object).toString()):0;
footer.put(object.toString(),num+=a );
}else{
footer.put(object.toString(),"合计");
}
}
}
}
cMap.add(footer);
Map <String, Object> mpAll = new HashMap <String, Object>();
Map <String, Object> mp = new HashMap <String, Object>();
mp.put("total", lMap.size());
mp.put("rows", lMap);
mp.put("footer",cMap);
if("1".equals(type)){
mpAll.put("columnsMp",colMap);
mpAll.put("ta", mp);
if(Assert.isNotEmpty(operate)){
List<Map<String,Object>> date= (List<Map<String, Object>>) mp.get("rows");
List<Map<String,Object>> footerDate= (List<Map<String, Object>>) mp.get("footer");
for (Map<String, Object> map : footerDate) {
date.add(map);
}
new WorkbookUtil().exportToCollect(request, response, operate,"表名", columnJson,date);
return null;
}
return mpAll;
}
if(Assert.isNotEmpty(operate)){
List<Map<String,Object>> date= (List<Map<String, Object>>) mp.get("rows");
List<Map<String,Object>> footerDate= (List<Map<String, Object>>) mp.get("footer");
for (Map<String, Object> map : footerDate) {
date.add(map);
}
new WorkbookUtil().exportToCollect(request, response, operate,"表名", columnJson,date);
return null;
}
return mp;
}
easyui DataGrid 工具类之 后台生成列的更多相关文章
- easyui DataGrid 工具类之 WorkbookUtil class
/** * @Title: WorkbookUtil.java * @Description: excel工具类 * @date 2014年5月29日 上午10:36:42 * @version V1 ...
- easyui DataGrid 工具类之 TableUtil class
import java.lang.reflect.InvocationTargetException;import java.util.ArrayList;import java.util.HashM ...
- easyui DataGrid 工具类之 列属性class
public class ColumnVO { /** * 列标题文本 */ private String title; /** * 列字段名称 */ pr ...
- easyui DataGrid 工具类之 util js
var jq; var tab; var tabsIndex; /** ...
- easyui DataGrid 工具类之 Utils class
import java.lang.reflect.InvocationTargetException;import java.text.ParseException;import java.text. ...
- easyui DataGrid表体单元格跨列rowspan
最近做项目用到了jquery easyui,其中一组DataGrid做的报表是给客户大领导看的,客户要求报表样式跟他们原有系统的一模一样(如下图1). DataGrid样式好调,只是城市名称单元格跨行 ...
- Mybitis根据工具类反射数据库生成映射+整合springboot
一 反向生成数据库mapper的工具类: 添加依赖 <dependency> <groupId>org.mybatis.generator</groupId> &l ...
- EasyUI datagrid : 启用行号、固定列及多级表头后,头部行号位置单元格错位的问题
症状如图: 上图中,行号列与checkbox 列融合了.解决方法是在datagrid 的 onLoadSuccess 事件中加入如下代码: var opts = $(this).datagrid('o ...
- java工具类(三)之生成若干位随机数
java 生成若干位随机数的问题 在一次编程的过程中偶然碰到一个小问题,就是需要生成一个4位数的随机数,如果是一个不到4位大的数字,前面可以加0来显示.因为要求最后是一个4位的整数,不带小数点.当时就 ...
随机推荐
- 【转】Mecanim Animator使用详解
http://blog.csdn.net/myarrow/article/details/45242403 1. 简介 Mecanim把游戏中的角色设计提高到了一个新的层次,使用Mecanim可以通过 ...
- jQuery 实时监听<input>输入值的变化
这方法比 on('keydown') 更实时 <input type='text' id='input1'/>$(document).ready(function(){ $('#input ...
- python爬虫学习-爬取某个网站上的所有图片
最近简单地看了下python爬虫的视频.便自己尝试写了下爬虫操作,计划的是把某一个网站上的美女图全给爬下来,不过经过计算,查不多有好几百G的样子,还是算了.就首先下载一点点先看看. 本次爬虫使用的是p ...
- 极光推送Jpush(v3)服务端PHP版本的api脚本类
原文地址:http://www.dodobook.net/php/780 关于极光推送的上一篇文章已经说明了,此处就不多说了.使用v3版本的原因是v2使用到2014年年底就停止了.点击查看上一篇的地址 ...
- 推荐两款免费的优质云服务MongoLab和RedisLabs
http://blog.didispace.com/liang-kuan-mian-fei-de-you-zhi-yun-fu-wu-mongolabhe-redislabs/ 由于最近想给白猫计划资 ...
- shell面试题目总结
1.如何理解shell脚本中第一行#!/bin/sh #!为特殊的表示符,其后是解释此脚本的shell的路径.此脚本使用/bin/sh进行解释执行. 2.如何向脚本传递参数. 脚本名字 参数1 参数2 ...
- Python之路-python(mysql介绍和安装、pymysql、ORM sqlachemy)
本节内容 1.数据库介绍 2.mysql管理 3.mysql数据类型 4.常用mysql命令 创建数据库 外键 增删改查表 5.事务 6.索引 7.python 操作mysql 8.ORM sqlac ...
- Discovering-论文
Discovering Spatio-Temporal Causal Interactions in Traffic Data Streams data:real taxi trajectories ...
- 教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神
本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http://www.xiaohuar.com/,让你体验爬取校花的成就感. Scr ...
- 最新IP地址数据库 二分逼近&二分查找 高效解析800万大数据之区域分布
最新IP地址数据库 来自 qqzeng.com 利用二分逼近法(bisection method) ,每秒300多万, 比较高效! 原来的顺序查找算法 效率比较低 readonly string i ...