Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/service/InventoryManagerImpl.java =================================================================== diff -u -r19629 -r19668 --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/service/InventoryManagerImpl.java (.../InventoryManagerImpl.java) (revision 19629) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/service/InventoryManagerImpl.java (.../InventoryManagerImpl.java) (revision 19668) @@ -1176,23 +1176,25 @@ godownEntryItem.setSourceIdFromHisSync(item.getSourceId()); godownEntryItem.setBatchIdFromHisSync(item.getBatchIdFromHisSync()); + + if(StringUtils.equals(type, GodownEntry.TYPE_OUT)){//若是一次性退库则需要批次,库存,批次库存id + //批次 + DisposableGoodsBatch DisposableGoodsBatch =(DisposableGoodsBatch)objectDao.getBySql( + DisposableGoodsBatch.class.getSimpleName(), + "where po.batchNumber="+item.getBatchNumber() +" and po.diposableGoods.id=" + disposableGoods.getId()); + godownEntryItem.setDisposableGoodsBatchID(DisposableGoodsBatch.getId()); //库存 WareHouse wareHouse = wareHouseManager.getDefaultWareHouseByUnitCode(AcegiHelper.getCurrentOrgUnitCode()); DisposableGoodsStock DisposableGoodsStock = (DisposableGoodsStock)objectDao.getBySql( DisposableGoodsStock.class.getSimpleName(), "where po.warehouseID="+ wareHouse.getId() +" and po.disposableGoodsID=" + disposableGoods.getId()); godownEntryItem.setDisposableGoodsStockID(DisposableGoodsStock.getId()); - //批次 - DisposableGoodsBatch DisposableGoodsBatch =(DisposableGoodsBatch)objectDao.getBySql( - DisposableGoodsBatch.class.getSimpleName(), - "where po.batchNumber="+item.getBatchNumber() +" and po.diposableGoods.id=" + disposableGoods.getId()); - godownEntryItem.setDisposableGoodsBatchID(DisposableGoodsBatch.getId()); //批次库存 DisposableGoodsBatchStock disposableGoodsBatchStock =(DisposableGoodsBatchStock)objectDao.getBySql( DisposableGoodsBatchStock.class.getSimpleName(), "where po.warehouseID="+ wareHouse.getId() +" and po.disposableGoodsBatchId=" + DisposableGoodsBatch.getId()); godownEntryItem.setDisposableGoodsBatchStockID(disposableGoodsBatchStock.getId()); - + } godownEntryItem.setGodownEntry(godownEntry);// 和退库单关联 //godownEntryItem.setDisposableGoodsStockID(disposableGoods.getId());// 和一次性物品ID关联 }