Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java =================================================================== diff -u -r14910 -r14931 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 14910) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 14931) @@ -5286,7 +5286,15 @@ departInvoice = new LinkedList(); departCodingInvoiceMap.put(invoice.getInvoicePlan().getDepartCoding(), departInvoice); } - departInvoice.add(invoice); + //fetch子表获取到的数据,有可能有重复的父表对象 + Invoice exist = CollectionUtils.find(departInvoice, new Predicate(){ + @Override + public boolean evaluate(Invoice object) { + return invoice.getId().equals(object.getId()); + }}); + if(exist == null){ + departInvoice.add(invoice); + } } } return departCodingInvoiceMap;