Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r31281 -r31287 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 31281) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 31287) @@ -4603,9 +4603,23 @@ } Map sumMap = new HashMap(); MaterialTypeWorkloadReport totalSumVo = new MaterialTypeWorkloadReport(); + Map materialTypeMap = new HashMap(); for (MaterialTypeWorkloadReport item : list) { String dayOfMonth = item.getDayOfMonth(); MaterialTypeWorkloadReport sumVo = null; + MaterialTypeWorkloadReport materialTypeVo = null; + if(materialTypeMap.containsKey(item.getMaterialType())){ + materialTypeVo = materialTypeMap.get(item.getMaterialType()); + materialTypeVo.setAmount(MathTools.add(item.getAmount(), materialTypeVo.getAmount()).intValue()); + materialTypeVo.setWashUnqualifiedAmount(MathTools.add(item.getWashUnqualifiedAmount(), materialTypeVo.getWashUnqualifiedAmount()).intValue()); + materialTypeVo.setWashUnqualifiedPercentage(MathTools.add(item.getWashUnqualifiedPercentage(), materialTypeVo.getWashUnqualifiedPercentage()).doubleValue()); + }else{ + materialTypeVo = new MaterialTypeWorkloadReport(); + materialTypeVo.setAmount(item.getAmount()); + materialTypeVo.setWashUnqualifiedAmount(item.getWashUnqualifiedAmount()); + materialTypeVo.setWashUnqualifiedPercentage(item.getWashUnqualifiedPercentage()); + materialTypeMap.put(item.getMaterialType(), materialTypeVo); + } if(sumMap.containsKey(dayOfMonth)){ sumVo = sumMap.get(dayOfMonth); sumVo.setAmount(MathTools.add(item.getAmount(), sumVo.getAmount()).intValue()); @@ -4626,6 +4640,7 @@ sumMap.put("合计", totalSumVo); data.put("dataList", list); data.put("sumData", JSONObject.fromObject(sumMap).toString()); + data.put("materialTypeMap", JSONObject.fromObject(materialTypeMap).toString()); obj.put("data", data); obj.put("success", true); } catch (Exception e) {