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位的整数,不带小数点.当时就 ...
随机推荐
- PostgreSQL全文检索zhparser使用
本文引用自: http://blog.chinaunix.net/uid-20726500-id-4820580.html 防止文章丢失才进行复制 PostgreSQL支持全文检索,其内置的缺省的分词 ...
- jqxComboBox
var uptype_source = [{ "TYPE_DESC": "总额度", " }, { "TYPE_DESC": &q ...
- virturalbox 本地win8 虚拟机为Linux-- 网络设置
网络地址转换 NAT(适合Linux临时上网,无法连接本地网络) ,Linux需要设置为自动连接 既DHCP,并service network restart 桥接 适合本地和虚拟机对接,虚拟机网络 ...
- 2.Linux如何学习
Linux的应用: 企业应用 个人应用 平行运算:所谓的平行运算指的是将原本的工作分成多份然后交给多台主机去运算,最终再将结果收集起来的一种方式.由于通过高速网络使用到多台主机(集群),将原本需要很长 ...
- OC中协议, 类目, 时间, 延展, 属性
只有继承和协议需要引IMPORT "头文件"; 必须接受marryprotocol协议, id<marryprotocol>基于类型的限定, 才能给实例变量赋值 @pr ...
- 安装Apache报80端口被占用 pid 4
安装Apache,不能安装成服务,提示端口已经被占用. 使用 netstat -ano | findstr "80" ,发现占用80端口的竟然是System进程. 这个进程是系统进 ...
- 推荐两款免费的优质云服务MongoLab和RedisLabs
http://blog.didispace.com/liang-kuan-mian-fei-de-you-zhi-yun-fu-wu-mongolabhe-redislabs/ 由于最近想给白猫计划资 ...
- Java 中 ThreadLocal 内存泄露的实例分析
前言 之前写了一篇深入分析 ThreadLocal 内存泄漏问题是从理论上分析ThreadLocal的内存泄漏问题,这一篇文章我们来分析一下实际的内存泄漏案例.分析问题的过程比结果更重要,理论结合实际 ...
- 如何从投票的网站的管理后台导出已投票的邀请码数据至Excel,并且稍修改,再导入到现场抽奖软件中?
第一步:进入投票网站的管理后台,导出 已投票 的 邀请码 相关信息至Excel中,下图所示: 并且 删除第一行表头汉字信息. 第二步:把第A列 数值 信息 转换 为 文本 信息(注:转换方法详细点击此 ...
- windows2008吃尽内存的解决办法
最近才用上windows2008,之前一直用的是windows2003,发现系统运行一段时间后,内存吃紧,赶紧打开资源查看器,发现当前运行的程序占有内存都很小,后经查资料,原来是被windows200 ...