Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/materialerrordamage/service/MaterialErrorDamageDetailManager.java =================================================================== diff -u -r26164 -r28883 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/materialerrordamage/service/MaterialErrorDamageDetailManager.java (.../MaterialErrorDamageDetailManager.java) (revision 26164) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/materialerrordamage/service/MaterialErrorDamageDetailManager.java (.../MaterialErrorDamageDetailManager.java) (revision 28883) @@ -9,6 +9,7 @@ import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; import com.forgon.disinfectsystem.entity.materialerrordamage.MaterialErrorDamageDetail; +import com.forgon.disinfectsystem.entity.packing.PackingTask; import com.forgon.disinfectsystem.entity.recyclingrecord.RecyclingItem; import com.forgon.tools.hibernate.BasePoManager; @@ -28,9 +29,9 @@ public int getRecyclingDamagedAmountWithPackingTaskByParam( String tousseName, String materialName); - public void materialSupplement(String packingTaskId,String type, JSONArray itemArray, String washBasketBarcode,String wareHouseId) throws Exception; + public void materialSupplement(String packingTaskId,String type, JSONArray itemArray, String washBasketBarcode,String wareHouseId, List supplementMaterialDetailIdList) throws Exception; - public void materialBatchSupplement(String type, String suppleStr,String washBasketBarcode,String warehouseId) throws Exception; + public void materialBatchSupplement(String type, String suppleStr,String washBasketBarcode,String warehouseId, List supplementMaterialDetailIdList) throws Exception; public List getErrorDamageUnionRecyclingItems(MaterialErrorDamageDetail materialDetail); /** @@ -68,5 +69,5 @@ * 器械报损补充的数据分摊到各科室(各材料按各科室月度使用量平摊、四舍五入、平摊的总数据要等于回写的总数) */ public void confirmShareMaterialDamageAddition() throws Exception; - + public Map getPackingTaskIdToErrorDamageRemarkMap(List packingTaskList); } Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/materialerrordamage/controller/MaterialErrorDamageController.java =================================================================== diff -u -r26164 -r28883 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/materialerrordamage/controller/MaterialErrorDamageController.java (.../MaterialErrorDamageController.java) (revision 26164) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/materialerrordamage/controller/MaterialErrorDamageController.java (.../MaterialErrorDamageController.java) (revision 28883) @@ -3,11 +3,13 @@ */ package com.forgon.disinfectsystem.materialerrordamage.controller; +import java.util.ArrayList; import java.util.List; import net.sf.json.JSONArray; import net.sf.json.JSONObject; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; @@ -19,6 +21,7 @@ import com.forgon.disinfectsystem.entity.materialerrordamage.MaterialErrorDamageDetail; import com.forgon.disinfectsystem.entity.packing.PackingTask; import com.forgon.disinfectsystem.entity.recyclingerror.RecyclingError; +import com.forgon.disinfectsystem.inventorymanagement.service.WriteBackInventoryManager; import com.forgon.disinfectsystem.materialerrordamage.service.MaterialErrorDamageDetailManager; import com.forgon.disinfectsystem.packing.service.PackingManager; import com.forgon.disinfectsystem.tousse.toussedefinition.service.TousseDefinitionManager; @@ -41,7 +44,11 @@ private PackingManager packingManager; @Autowired private ObjectDao objectDao; - + /** + * 回写manager + */ + @Autowired(required=false) + private WriteBackInventoryManager writeBackInventoryManager; @RequestMapping(value = "/loadAdditionalMaterialStore") public String loadAdditionalMaterialStore() { String type = SpringUtils.getPraramValue("type", null); @@ -190,18 +197,25 @@ String warehouseId = SpringUtils.getPraramValue("warehouseId", ""); try { // 批量补充丢失、报损 + List supplementMaterialDetailIdList = new ArrayList(); if (StringUtils.isBlank(packingTaskId)) { materialErrorDamageDetailManager.materialBatchSupplement(type, - suppleJson, washBasketBarcode,warehouseId); + suppleJson, washBasketBarcode,warehouseId,supplementMaterialDetailIdList); // 单个装配 } else { JSONArray suppleArray = null; if (StringUtils.isNotBlank(suppleJson)) { suppleArray = JSONArray.fromObject(suppleJson); } materialErrorDamageDetailManager.materialSupplement( - packingTaskId, type, suppleArray, washBasketBarcode,warehouseId); + packingTaskId, type, suppleArray, washBasketBarcode,warehouseId,supplementMaterialDetailIdList); } + //如果有补充的数据则回写 + if(CollectionUtils.isNotEmpty(supplementMaterialDetailIdList)){ + if(writeBackInventoryManager != null){ + writeBackInventoryManager.writeBackForSupplementMaterialDetailData(supplementMaterialDetailIdList, true); + } + } } catch (Exception e) { msg = e.getMessage(); success = false; Index: ssts-web/src/main/webapp/disinfectsystem/config/zsykzx/spring/HERP.xml =================================================================== diff -u -r28112 -r28883 --- ssts-web/src/main/webapp/disinfectsystem/config/zsykzx/spring/HERP.xml (.../HERP.xml) (revision 28112) +++ ssts-web/src/main/webapp/disinfectsystem/config/zsykzx/spring/HERP.xml (.../HERP.xml) (revision 28883) @@ -48,6 +48,7 @@ +