Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceOptimizeManagerImpl.java =================================================================== diff -u -r27851 -r27872 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceOptimizeManagerImpl.java (.../InvoiceOptimizeManagerImpl.java) (revision 27851) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceOptimizeManagerImpl.java (.../InvoiceOptimizeManagerImpl.java) (revision 27872) @@ -2648,7 +2648,7 @@ SqlUtils.getStringFieldInLargeCollectionsPredicate("td.materialsMD5", materialsMd5ToTiListMap.keySet()))); }); //申请项按祖先包定义id及材料md5条件的过滤(对每个祖先包定义及其各材料md5条件用and分隔) - String tdIdAndMaterialsMd5ConidtionForTousseItem = StringUtils.join(tdIdAndMaterialsMd5Conidtion, " and "); + String tdIdAndMaterialsMd5ConidtionForTousseItem = StringUtils.join(tdIdAndMaterialsMd5Conidtion, " or "); /* * 申请项过滤条件: @@ -2659,7 +2659,7 @@ * 5.所属包定义的祖先包定义及相关的材料md5 */ String tousseItemCondition = String.format("%s and (po.isTerminated is null or po.isTerminated <> 1) " - + "and (po.isInvoice = '%s') and %s > po.sendOutAmount and %s", + + "and (po.isInvoice = '%s') and %s > po.sendOutAmount and (%s)", SqlUtils.getNonStringFieldInLargeCollectionsPredicate("po.ancestorID", ancestorIdToMaterialsMD5TiListMap.keySet()),Constants.STR_YES, CssdUtils.buildTousseItemShouldDeliverAmountSql("invoicePlan", "po", invoiceOrigin, afterRecyclingTousseDeliver),