个人经验分享,,,做Jeecg dataGrid footer 遇到的问题,在这问题到,我弄了好久,也在群里求助几天,还是没得解决,我累个天,,,很是烦,,,,
下面说说,2种情况
1,如果没有替换的字典,,,在dataGrid 设置 footer就ok
2,有替换字段的,这种情况就是我遇到 的,明白之后就比较容易了,
有替换或字典的话,js,就报错说替换出错,我就奇怪了,页面不是有替换的,不正常吗,为什么出错,我看了半天的 js , 还是看不出什么,去年哪段js ,其他的又不能用,
后来我就想的,替换可不可以在控制层做,有这个想法就动手 ,把所有的替换字段,字典,改下,再发送dataGrid,
下面看代码:
List <StockOutS051Entity> resualtlist= dataGrid.getResults();
//不保存操作
systemService.getSession().clear();
int sum = 0;
if(resualtlist.size()!=0){
for(StockOutS051Entity aa:resualtlist)
{
sum=sum+Integer.valueOf(aa.getQty());
//findByfliedAndTypeCode,字段替换方法,相信大家会写,注意清空getSession().clear();,不然保存数据库
aa.setPno(stockOutS050Service.findByfliedAndTypeCode("b004","prodno","pno",aa.getPno(),"",""));
aa.setCno(stockOutS050Service.findByfliedAndTypeCode("b005","color","cno",aa.getCno(),"",""));
aa.setSno(stockOutS050Service.findByfliedAndTypeCode("b006","sizeNo","sno",aa.getSno(),"",""));
aa.setStockid(stockOutS050Service.findByfliedAndTypeCode("b007","stock","stockid",aa.getStockid(),"",""));
}
}
//格式化为小数点2位数
// DecimalFormat df = new DecimalFormat("#.00");
String total_salary=Integer.toString(sum);
dataGrid.setFooter("stockid:合计:,qty:"+(total_salary.equalsIgnoreCase("null")?"0":total_salary));