Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/customIntoBasket.png =================================================================== diff -u -r13317 -r13330 Binary files differ Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r13300 -r13330 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 13300) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 13330) @@ -1760,15 +1760,15 @@ if (ti.getAmount() > 0 && "是".equals(ti.getIsRecycling())) { recyclingApplicationManager .newUnPackingTousseInstance( - td,recyclingAmount - ti.getAmount() , null , recyclingRecord); + td,recyclingAmount - ti.getAmount() , application , recyclingRecord); //回收申请单 } else if (InvoicePlan.TYPE_RECYCLINGCREATE_APPLICATION .equals(application.getType())) { Integer amount = map.get(ti.getTousseName()); if(amount != null){ recyclingApplicationManager .newUnPackingTousseInstance( - td,amount , null , recyclingRecord); + td,amount , application , recyclingRecord); } } } Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r13300 -r13330 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 13300) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 13330) @@ -3723,7 +3723,9 @@ if(wareHouse == null){ throw new RuntimeException("该处理科室无仓库定义,不能保存!"); } + String goodsStockType = null; if (amount > 0) { + goodsStockType = GoodsStockManager.MODE_INSTOCK; SupplyRoomConfig cfg = supplyRoomConfigManager .getSystemParamsObj(); for (int i = 0; i < amount; i++) { @@ -3784,30 +3786,35 @@ tousseInstanceManager.saveOrUpdate(tousseInstance); } } else if (amount < 0) { + goodsStockType = GoodsStockManager.MODE_OUTSTOCK; for (int i = 0; i < -amount; i++) { if (list.size() >= -amount) { TousseInstance ins = list.get(i); tousseInstanceManager.delete(ins); } } } - 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()); + if(amount != 0){ + if(amount < 0){ + amount = -amount; + } + 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, goodsStockType); + } catch (Exception e) { + throw new RuntimeException(e.getMessage()); + } } - } }