Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/action/InvoiceAction.java =================================================================== diff -u -r18363 -r18509 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/action/InvoiceAction.java (.../InvoiceAction.java) (revision 18363) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/action/InvoiceAction.java (.../InvoiceAction.java) (revision 18509) @@ -1583,6 +1583,7 @@ vo.setInvoicePlanID(JSONUtil.optLong(data,"invoicePlanID",null)); vo.setProxyDisinfection_id(JSONUtil.optLong(data,"proxyDisinfection_id",null)); vo.setProxyDisinfectionSent(JSONUtil.optString(data,"proxyDisinfectionSent",null)); + vo.setMaterialAmount(JSONUtil.optInt(data,"materialAmount",0)); vo.setPrice(String.valueOf(data.get("price").getAsDouble())); vo.setFluctuationPrice(String.valueOf(data.get("fluctuationPrice").getAsDouble())); JsonElement ele = data.get("sterileEndTime"); @@ -1628,6 +1629,7 @@ vo.setTousseType(data.get("tousseType").getAsString()); vo.setInvoicePlanID(JSONUtil.optLong(data,"invoicePlanID",null)); vo.setProxyDisinfection_id(JSONUtil.optLong(data,"proxyDisinfection_id",null)); + vo.setMaterialAmount(JSONUtil.optInt(data,"materialAmount",0)); vo.setPrice(String.valueOf(data.get("price").getAsDouble())); vo.setFluctuationPrice(String.valueOf(data.get("fluctuationPrice").getAsDouble())); JsonElement ele = data.get("sterileEndTime"); Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/invoicemanager/InvoiceGoodsVo.java =================================================================== diff -u -r16848 -r18509 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/invoicemanager/InvoiceGoodsVo.java (.../InvoiceGoodsVo.java) (revision 16848) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/invoicemanager/InvoiceGoodsVo.java (.../InvoiceGoodsVo.java) (revision 18509) @@ -25,6 +25,8 @@ private Integer count; + private Integer materialAmount; + private String diposable = Constants.STR_NO; private String price; @@ -132,6 +134,14 @@ this.count = count; } + public Integer getMaterialAmount() { + return materialAmount; + } + + public void setMaterialAmount(Integer materialAmount) { + this.materialAmount = materialAmount; + } + public String getDiposable() { return diposable; } Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java =================================================================== diff -u -r18506 -r18509 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 18506) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 18509) @@ -3837,8 +3837,7 @@ result.addProperty("tousseName", TousseDefinitionUtils.getTousseRawName(goodsName)); } result.addProperty("isCleanedEntirely", td.getIsApplyEntireTousse()); - if(TousseDefinition.PACKAGE_TYPE_DISINFECTION.equals(td.getTousseType()) - && !td.applyEntireTousse()){ + if(TousseDefinition.PACKAGE_TYPE_DISINFECTION.equals(td.getTousseType())){ // 非整包清洗的消毒物品,显示材料数量 result.addProperty("materialAmount", CssdUtils.getMaterialTotalAmount(td,false)); } @@ -5030,6 +5029,9 @@ datas.put(mapKey, vo); }else{ + if(!StringUtils.equals(tousseType, vo.getGoodsType())){ + continue; + } // 校验vo的属性是否兼容 if(applicationItem.isDisinfection()){ // 保证全部为拆包或者整包 @@ -5065,7 +5067,8 @@ if(!tousseDefinition.applyEntireTousse()){ TousseItemVoForApplicationGoodsVo tousseItemVo = new TousseItemVoForApplicationGoodsVo(); int materialTotalAmount = vo.getMaterialAmount(); - materialTotalAmount += CssdUtils.getMaterialTotalAmount(tousseDefinition,false); + int materiallAmount = CssdUtils.getMaterialTotalAmount(tousseDefinition,false); + materialTotalAmount += materiallAmount; vo.setMaterialAmount(materialTotalAmount); vo.setIsCleanedEntirely(tousseDefinition.getIsApplyEntireTousse()); // 将材料明细设置到tousseVO里面 @@ -5085,7 +5088,7 @@ } tousseItemVo.setCount(notSendAmount); - tousseItemVo.setMaterialAmount(materialTotalAmount); + tousseItemVo.setMaterialAmount(materiallAmount); tousseItemVo.setName(goodsName); tousseItemVo.setTousseDefinitionId(tousseDefinitionId); tousseItemVo.setMaterialsMD5(tousseDefinition.getMaterialsMD5());