Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/vo/InvoicePrintVo.java =================================================================== diff -u -r14992 -r15920 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/vo/InvoicePrintVo.java (.../InvoicePrintVo.java) (revision 14992) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/vo/InvoicePrintVo.java (.../InvoicePrintVo.java) (revision 15920) @@ -266,4 +266,11 @@ this.supplierName = StringTools.defaultString(supplierName); } + public String nameWithSpecification(){ + if(StringTools.isBlank(specification)){ + return name; + } + return name + "[" + specification + "]"; + } + } Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r15905 -r15920 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 15905) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 15920) @@ -2448,9 +2448,8 @@ packageSpec = StringTools.defaultString(disposableGoods.getPackageSpec()); externalCode = StringTools.defaultString(disposableGoods.getExternalCode()); sp = disposableGoods.showSpecification(); + name = disposableGoods.getName(); } - - } // 是消毒物品 else if (TousseDefinition.PACKAGE_TYPE_DISINFECTION.equals(tousseType)) { Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java =================================================================== diff -u -r15918 -r15920 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 15918) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 15920) @@ -6718,14 +6718,7 @@ InvoiceItem invoiceItem = find(invoice.getInvoiceItem(),goodsItem.getInvoiceItemID()); String batchNumber = goodsItem.getBatch();// 批次 - String specification = "";// 规格 String goodsName = goodsItem.getName(); - int spIndex = goodsName.lastIndexOf("["); - if (spIndex > 0) { - specification = goodsName.substring(spIndex + 1, - goodsName.length() - 1); - goodsName = goodsName.substring(0, spIndex); - } List voList = map.get(goodsItem.getName()); Double totalPrice = MathTools.mul(goodsItem.getFluctuationPrice(), goodsItem.getAmount()).doubleValue(); if(voList == null){ @@ -6750,7 +6743,7 @@ && vo.getDiposableGoodsPrice() .toString() .equals(getDisplayPrice(invoiceItem,goodsItem).toString()) - && vo.getSpecification().equals(specification)) { + && vo.nameWithSpecification().equals(goodsName)) { tempVo = vo; break; } @@ -6764,7 +6757,6 @@ .getDiposableGoodsTotalPrice() + totalPrice); } else { tempVo = new InvoicePrintVo(); - tempVo.setName(goodsName); tempVo.setDiposableGoodsAmount(getDisplayAmout(invoiceItem, goodsItem)); tempVo.setAmount(getDisplayAmout(invoiceItem, goodsItem)); tempVo.setDiposableGoodsName(goodsName); @@ -6788,8 +6780,13 @@ tempVo.setExternalCode(""); } } + DisposableGoods dg = diposableGoodsManager.getDisposableGoodsById(goodsItem.getDisposableGoodsID()); + if(dg != null){ + tempVo.setName(dg.getName()); + tempVo.setSpecification(dg.showSpecification()); + } + } - tempVo.setSpecification(specification); voList.add(tempVo); } }