Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r35471 -r35491 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 35471) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 35491) @@ -7392,14 +7392,15 @@ sortDetailItems(detail); datas.add(detail); } - orderDepartmentMonthDetailList(datas);//数据库里排序无效 + orderDepartmentMonthDetailList(datas,showSendTime);//数据库里排序无效 return datas; } /** * 对DepartmentMonthDetailList进行排序(按科室供应室配置的科室申领的顺序科室排序) * @param list + * @param showSendTime 显示发货 按发货排序 */ - private void orderDepartmentMonthDetailList(List list){ + private void orderDepartmentMonthDetailList(List list , boolean showSendTime){ Map map = supplyRoomConfigManager.getOrgUnitAndSequenceMap(3); Collections.sort(list, new Comparator() { @Override @@ -7420,7 +7421,19 @@ Collections.sort(items, new Comparator() { @Override public int compare(DepartmentMonthDetailItem o1, DepartmentMonthDetailItem o2) { - return o1.getSendTime().compareTo(o2.getSendTime()); + if(showSendTime){ + return o1.getSendTime().compareTo(o2.getSendTime()); + }else{ + if (o1.getTypeOrder() == o2.getTypeOrder()) { + return (o1.getGoodsName()+o1.getSpecification()).compareTo((o2.getGoodsName()+o2.getSpecification())); + } else { + if(o1.getTypeOrder() > o2.getTypeOrder()){ + return 1; + }else{ + return -1; + } + } + } } }); }