问题描述
public Map<String, Object> list(HttpServletRequest request) {PageInfo pageInfo = WebUtils.newPageInfo(request);WaybillInfo waybillInfo = WebUtils.newObject(WaybillInfo.class,"waybill", request);UserInfo userInfo = UserInfo.get();waybillInfo.setOwner(userInfo.getUserNo());List<String> roleList = roleUserMapper.queryList(userInfo.getUserNo());waybillInfo.setRoleList(roleList);List<WaybillInfo> waybillList = waybillMapper.list(waybillInfo,pageInfo);List<WaybillInfo> footerList = new ArrayList<WaybillInfo>();// 总运费 汇总 求余double sumttlfee = 0;double avettlfee = 0;// 申请金额 汇总 求余double sumappfncamt = 0;double aveappfncamt = 0;for (int i = 0; i < waybillList.size(); i++) {sumttlfee += Double.parseDouble(waybillList.get(i).getTtlfee());sumappfncamt += Double.parseDouble(waybillList.get(i).getAppfncamt());}avettlfee = sumttlfee / waybillList.size();aveappfncamt = sumappfncamt / waybillList.size();WaybillInfo waybillInfo2 = new WaybillInfo();// 平均值waybillInfo2.setTtlfee(String.format("%.2f", avettlfee));waybillInfo2.setAppfncamt(String.format("%.2f", aveappfncamt));waybillInfo2.setMile("平均价格:");// 总和WaybillInfo waybillInfo3 = new WaybillInfo();waybillInfo3.setTtlfee(String.format("%.2f", sumttlfee));waybillInfo3.setAppfncamt(String.format("%.2f", sumappfncamt));waybillInfo3.setMile("总价格:");footerList.add(waybillInfo2);footerList.add(waybillInfo3);// 返回结果Map<String, Object> result = new HashMap<String, Object>();result.put("rows", waybillList);result.put("total", pageInfo.getTotalCount());result.put("footer", footerList);return result;}
解决方案
//拿到分页的东西PageInfo pageInfo = WebUtils.newPageInfo(request);// 应该支付对象WaybillInfo waybillInfo = WebUtils.newObject(WaybillInfo.class,"waybill", request);// 用户信息UserInfo userInfo = UserInfo.get();// 设置用户的编号waybillInfo.setOwner(userInfo.getUserNo());// 根据用户的编码拿到用户的角色List<String> roleList = roleUserMapper.queryList(userInfo.getUserNo());// 支付设置用户的角色waybillInfo.setRoleList(roleList);// 根据支付账号的信息,分页的分页拿到支付的集合List<WaybillInfo> waybillList = waybillMapper.list(waybillInfo,pageInfo);// 总运费 汇总 求余double sumttlfee = 0;double avettlfee = 0;// 申请金额 汇总 求余double sumappfncamt = 0;double aveappfncamt = 0;// 根据每条支付信息的费用拿到总运费 以及申请金额for (int i = 0; i < waybillList.size(); i++) {sumttlfee += Double.parseDouble(waybillList.get(i).getTtlfee());sumappfncamt += Double.parseDouble(waybillList.get(i).getAppfncamt());}// 平均每条运费=总运费/所有的支付条数avettlfee = sumttlfee / waybillList.size();// 平均每条申请金额=总运费/所有的支付条数aveappfncamt = sumappfncamt / waybillList.size();// /新建 对象 放求的数据WaybillInfo waybillInfo2 = new WaybillInfo();// 平均值waybillInfo2.setTtlfee(String.format("%.2f", avettlfee));waybillInfo2.setAppfncamt(String.format("%.2f", aveappfncamt));waybillInfo2.setMile("平均价格:");// 总和WaybillInfo waybillInfo3 = new WaybillInfo();waybillInfo3.setTtlfee(String.format("%.2f", sumttlfee));waybillInfo3.setAppfncamt(String.format("%.2f", sumappfncamt));waybillInfo3.setMile("总价格:");// 把刚才整的对象放到这个集合中List<WaybillInfo> footerList = new ArrayList<WaybillInfo>();footerList.add(waybillInfo2);footerList.add(waybillInfo3);// 返回结果Map<String, Object> result = new HashMap<String, Object>();result.put("rows", waybillList);result.put("total", pageInfo.getTotalCount());result.put("footer", footerList);return result;