Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceOptimizeManagerImpl.java =================================================================== diff -u -r29126 -r29226 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceOptimizeManagerImpl.java (.../InvoiceOptimizeManagerImpl.java) (revision 29126) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceOptimizeManagerImpl.java (.../InvoiceOptimizeManagerImpl.java) (revision 29226) @@ -1251,10 +1251,11 @@ ti.getBarcode(),ti.getTousseName())); } } - String sourceDepartCodingOfTousseInstance = params.optString("departCode"); + //包实例的来源科室 + String sourceDepartCodingOfTousseInstance = ti.getDepartCoding(); //1.5判断所属科室(根据包定义的限制发货科室)(HZSRMYY-56 申请科室为空的包,发货时不限制其发货科室) if(StringUtils.isNotBlank(sourceDepartCodingOfTousseInstance) && StringUtils.equals(td.getLimitInvoiceDepart(), Constants.STR_YES) - && !StringUtils.equals(ti.getDepartCoding(), params.optString("departCode"))){ + && !StringUtils.equals(sourceDepartCodingOfTousseInstance, params.optString("departCode"))){ throw new SystemException( String.format("条码为%s的%s的来源科室为%s,当前发放的科室又是%s,该包定义限制发货科室,所以不能发货!", ti.getBarcode(),ti.getTousseName(),ti.getDepart(),params.optString("depart")));