Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/toussedefinition/service/TousseInstanceUtils.java =================================================================== diff -u -r16376 -r16708 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/toussedefinition/service/TousseInstanceUtils.java (.../TousseInstanceUtils.java) (revision 16376) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/toussedefinition/service/TousseInstanceUtils.java (.../TousseInstanceUtils.java) (revision 16708) @@ -382,4 +382,22 @@ } return ids; } + + public static Long safelyGetTousseDefinitionId(TousseInstance tousseInstance) { + if(tousseInstance == null){ + return null; + } + TousseDefinition tousseDefinition = tousseInstance.getTousseDefinition(); + if(tousseDefinition == null){ + return null; + } + return tousseDefinition.getId(); + } + public static String safelyGetTousseDefinitionIdStr(TousseInstance tousseInstance) { + Long id = safelyGetTousseDefinitionId(tousseInstance); + if(id == null){ + return null; + } + return id.toString(); + } } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r16703 -r16708 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 16703) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 16708) @@ -1696,6 +1696,7 @@ .get(application)) { InvoiceItem item = new InvoiceItem(); item.setTousseName(instance.getTousseName()); + item.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(instance)); item.setDiposable("否"); item.setTousseType(instance.getTousseDefinition().getTousseType()); item.setAmount(1); Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java =================================================================== diff -u -r16590 -r16708 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 16590) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 16708) @@ -4953,6 +4953,7 @@ .getTousseDefinition().getTousseType()); invoiceItem.setTousseName(tousseInstance .getTousseName()); + invoiceItem.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(tousseInstance)); invoiceItemMap.put(tousseName, invoiceItem); } else { @@ -5106,6 +5107,7 @@ invoiceItem.setTousseType(tousseInstance .getTousseDefinition().getTousseType()); invoiceItem.setTousseName(tousseName); + invoiceItem.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(tousseInstance)); tousseNameToInvoiceItemMap.put(tousseName, invoiceItem); } else { invoiceItem @@ -5164,6 +5166,7 @@ .getTousseDefinition().getTousseType()); invoiceItem.setTousseName(tousseInstance .getTousseName()); + invoiceItem.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(tousseInstance)); invoiceItemMap.put(tousseInstance.getTousseName(), invoiceItem); } else { @@ -5540,6 +5543,7 @@ invoiceItem.setTousseType(applicationItem.getTousseType()); } invoiceItem.setTousseName(applicationGoodsName); + invoiceItem.setTousseDefinitionId(applicationItem.getTousseDefinitionId()); invoiceItemSet.add(invoiceItem); // 修改紧急数量 if(submitInvoiceContext.isSendOnlyUrgentGoods()){ @@ -5612,6 +5616,7 @@ invoiceItem.getTousseInstances().add(scannedTousseInstance); } invoiceItem.setTousseName(appTousseName); + invoiceItem.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(scannedTousseInstance)); invoiceItemSet.add(invoiceItem); submitInvoiceItem.setSentAmount(submitInvoiceItem.getSentAmount()+canSendAmount); @@ -5688,6 +5693,7 @@ invoiceItem.getTousseInstances().add(scannedTousseInstance); } invoiceItem.setTousseName(scannedTousseName); + invoiceItem.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(scannedTousseInstance)); submitInvoiceItem.setSentAmount(submitInvoiceItem.getSentAmount()+canSendAmount); } Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r16696 -r16708 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 16696) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 16708) @@ -2555,6 +2555,7 @@ if (item == null) { item = new InvoiceItem(); item.setTousseName(tousseInstance.getTousseName()); + item.setTousseDefinitionId(td.getId()); item.setDiposable("否"); item.setTousseType(td.getTousseType()); item.setAmount(1); Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/InvoicePlanAction.java =================================================================== diff -u -r16316 -r16708 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/InvoicePlanAction.java (.../InvoicePlanAction.java) (revision 16316) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/InvoicePlanAction.java (.../InvoicePlanAction.java) (revision 16708) @@ -39,6 +39,7 @@ import com.forgon.directory.acegi.tools.AcegiHelper; import com.forgon.directory.model.BarcodeDevice; import com.forgon.disinfectsystem.barcode.service.BarcodeManager; +import com.forgon.disinfectsystem.basedatamanager.toussedefinition.service.TousseInstanceUtils; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; import com.forgon.disinfectsystem.entity.invoicemanager.Invoice; import com.forgon.disinfectsystem.entity.invoicemanager.InvoiceItem; @@ -313,6 +314,7 @@ // 待发货物品 InvoiceItem invoiceItem = new InvoiceItem(); invoiceItem.setTousseName(tousseInstance.getTousseName()); + invoiceItem.setTousseDefinitionId(TousseInstanceUtils.safelyGetTousseDefinitionId(tousseInstance)); invoiceItem.setAmount(1); invoiceItem.setDiposable(InvoiceItem.DIPOSABLE_NO); invoiceItem.setTousseType(tousseInstance.getTousseDefinition().getTousseType());