Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r12713 -r12736 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 12713) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 12736) @@ -40,6 +40,7 @@ import com.forgon.directory.model.BarcodeDevice; import com.forgon.directory.model.OrgUnit; import com.forgon.directory.vo.LoginUserData; +import com.forgon.disinfectsystem.basedatamanager.goodsstock.service.GoodsStockManager; import com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager; import com.forgon.disinfectsystem.basedatamanager.warehouse.service.WareHouseManager; import com.forgon.disinfectsystem.common.CSSDConstants; @@ -56,6 +57,7 @@ import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; import com.forgon.disinfectsystem.entity.basedatamanager.warehouse.WareHouse; import com.forgon.disinfectsystem.entity.foreigntousseapplication.ForeignTousseApplication; +import com.forgon.disinfectsystem.entity.goodsstock.GoodsStock; import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; import com.forgon.disinfectsystem.entity.packing.PackingTask; import com.forgon.disinfectsystem.entity.recyclingapplication.RecyclingApplication; @@ -117,6 +119,12 @@ private WareHouseManager wareHouseManager; + private GoodsStockManager goodsStockManager; + + public void setGoodsStockManager(GoodsStockManager goodsStockManager) { + this.goodsStockManager = goodsStockManager; + } + public void setWareHouseManager(WareHouseManager wareHouseManager) { this.wareHouseManager = wareHouseManager; } @@ -3677,11 +3685,15 @@ + "'"; List list = tousseInstanceManager .getTousseInstanceBySql(sql); + OrgUnit orgUnit = new OrgUnit(); + orgUnit.setOrgUnitCoding(application.getHandleDepartCoding()); + WareHouse wareHouse = wareHouseManager.getDefaultWareHouseListByOrgUnit(orgUnit); + if(wareHouse == null){ + throw new RuntimeException("该处理科室无仓库定义,不能保存!"); + } if (amount > 0) { SupplyRoomConfig cfg = supplyRoomConfigManager .getSystemParamsObj(); - OrgUnit orgUnit = new OrgUnit(); - orgUnit.setOrgUnitCoding(application.getHandleDepartCoding()); for (int i = 0; i < amount; i++) { TousseInstance tousseInstance = new TousseInstance(); tousseInstance.setTousseName(td.getName()); @@ -3726,10 +3738,6 @@ tousseInstance.setOperationTime(new Date()); tousseInstance .setUnTraceableTousse(TousseInstance.FICTITIOUS_GOODS_TRUE); - WareHouse wareHouse = wareHouseManager.getDefaultWareHouseListByOrgUnit(orgUnit); - if(wareHouse == null){ - throw new RuntimeException("该处理科室无仓库定义,不能保存!"); - } tousseInstance.setWareHouseId(wareHouse.getId()); tousseInstance.setWareHouseName(wareHouse.getName()); if(application != null){ @@ -3751,6 +3759,23 @@ } } } + List stockList = new ArrayList(); + GoodsStock stock = new GoodsStock(); + stock.setTousseDefinitionId(td.getId()); + stock.setAmount(amount); + stock.setGoodsType(GoodsStock.TYPE_TOUSSE); + stock.setName(td.getName()); + stock.setOrgUnitCode(wareHouse.getOrgUnitCode()); + stock.setOrgUnitName(wareHouse.getOrgUnitName()); + stock.setWareHouseId(wareHouse.getId()); + stock.setWareHouseName(wareHouse.getName()); + stockList.add(stock); + try { + goodsStockManager.saveOrUpdateGoodsStock(stockList, GoodsStockManager.MODE_INSTOCK); + } catch (Exception e) { + throw new RuntimeException(e.getMessage()); + } + } }