Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/InvoicePlanManagerImpl.java =================================================================== diff -u -r21777 -r21779 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/InvoicePlanManagerImpl.java (.../InvoicePlanManagerImpl.java) (revision 21777) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/InvoicePlanManagerImpl.java (.../InvoicePlanManagerImpl.java) (revision 21779) @@ -799,27 +799,37 @@ // 如果是一次性物品申请,则设置外部编码 if (isDiposableApplicationForm) { - String materialName = item.getTousseName(); - String specification = null; - if (materialName.lastIndexOf("[") >= 0) { - materialName = item - .getTousseName() - .substring(0, - item.getTousseName().lastIndexOf("[")) - .trim(); - specification = item - .getTousseName() - .substring( - item.getTousseName().lastIndexOf("[") + 1, - item.getTousseName().length() - 1) - .trim(); +// String materialName = item.getTousseName(); +// String specification = null; +// if (materialName.lastIndexOf("[") >= 0) { +// materialName = item +// .getTousseName() +// .substring(0, +// item.getTousseName().lastIndexOf("[")) +// .trim(); +// specification = item +// .getTousseName() +// .substring( +// item.getTousseName().lastIndexOf("[") + 1, +// item.getTousseName().length() - 1) +// .trim(); +// } +// DisposableGoods diposableGoods = diposableGoodsManager +// .getDisposableGoodsOfTousseMaterialByName( +// materialName, specification); +// if (diposableGoods != null) { +// vo.setExternalCode(diposableGoods.getExternalCode()); +// } + + + Long disposableGoodsId = item.getDisposableGoodsId(); + if (DatabaseUtil.isPoIdValid(disposableGoodsId)) { + DisposableGoods diposableGoods = diposableGoodsManager.get(disposableGoodsId); + if (diposableGoods != null) { + vo.setExternalCode(diposableGoods.getExternalCode()); + } } - DisposableGoods diposableGoods = diposableGoodsManager - .getDisposableGoodsOfTousseMaterialByName( - materialName, specification); - if (diposableGoods != null) { - vo.setExternalCode(diposableGoods.getExternalCode()); - } + if (ObjectUtils.equals("gdsy", CssdUtils.getProjectName())){ Integer middlePackageAmount = MathTools.object2Integer(item.getMiddlePackageAmount()); vo.setAmountDisplay(ObjectUtils.equals(CssdUtils.getSystemSetConfigByName("showMiddlePackageAmount"), "true") && middlePackageAmount != 0 ?