Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r33037 -r33042 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 33037) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 33042) @@ -73,6 +73,7 @@ import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; import com.forgon.disinfectsystem.entity.basedatamanager.warehouse.WareHouse; +import com.forgon.disinfectsystem.entity.customform.forminstance.FormInstance; import com.forgon.disinfectsystem.entity.foreigntousseapplication.ForeignTousseApplication; import com.forgon.disinfectsystem.entity.goodsstock.GoodsStock; import com.forgon.disinfectsystem.entity.invoicemanager.Invoice; @@ -1593,7 +1594,7 @@ Collection containerBarcodes, Long originalSterilizationRecordId){ return saveOrUpdateSterilizationRecord(sterilizationRecord,tousseInstanceBarcodes, - containerBarcodes,originalSterilizationRecordId,null, null, null); + containerBarcodes,originalSterilizationRecordId,null, null, null, null); } @Override @@ -1603,7 +1604,7 @@ Collection containerBarcodes, Long originalSterilizationRecordId, Map barcodePositionMap, JSONArray delTousseJsonArr, - Map subTdAmountMap) { + Map subTdAmountMap,JSONObject paramObj) { boolean enableTheSterilizationResultJudgmentFunction = CssdUtils.getSystemSetConfigByNameBool("enableTheSterilizationResultJudgmentFunction", false); try { KeyValue keyValue = (KeyValue) objectDao.getByProperty_ForUpdate(KeyValue.class.getSimpleName(), "key", "software.dataVersion"); @@ -2229,6 +2230,18 @@ updateSterilizationResult(sterilizationRecord); result.put("sterilizationResult", sterilizationRecord.getSterilizationResult()); } + if(paramObj != null && "true".equals(paramObj.optString("delFormInstance"))){ + if(sterilizationRecord.getRunTableRecordFormInstance() != null){ + FormInstance formInstance = sterilizationRecord.getRunTableRecordFormInstance(); + sterilizationRecord.setRunTableRecordFormInstance(null); + objectDao.delete(formInstance); + } + if(sterilizationRecord.getSafetyCheckFormInstance() != null){ + FormInstance formInstance = sterilizationRecord.getSafetyCheckFormInstance(); + sterilizationRecord.setSafetyCheckFormInstance(null); + objectDao.delete(formInstance); + } + } saveOrUpdate(sterilizationRecord); result.put("sterilizationRecordId", sterilizationRecord.getId()); // 计算并更新器械统计信息 Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManager.java =================================================================== diff -u -r32771 -r33042 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManager.java (.../SterilizationRecordManager.java) (revision 32771) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManager.java (.../SterilizationRecordManager.java) (revision 33042) @@ -228,6 +228,7 @@ * @parmt 灭菌管理模块灭菌中的灭菌记录删除篮筐内的物品 或灭菌干预模块删除记录删除篮筐内的物品 * @param delTousseJsonArr 灭菌记录篮筐内被删除的器械包信息 例如:[{basketBarcode:'00000000',barcode:'00000'},{basketBarcode:'00000000',barcode:'00000'}] * @param subTdAmountMap 固定条码器械包定义对应的删除数量(打开已经保存的灭菌记录,修改物品数量或者删除物品时,记录扣减的物品数量) + * @param paramObj 一些额外的参数 * @return */ public Map saveOrUpdateSterilizationRecord( @@ -236,7 +237,7 @@ Collection containerBarcodes, Long originalSterilizationRecordId, Map barcodePositionMap, - JSONArray delTousseJsonArr,Map subTdAmountMap); + JSONArray delTousseJsonArr,Map subTdAmountMap, JSONObject paramObj); /** * 灭菌干预的处理 Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/controller/SterilizationRecordController.java =================================================================== diff -u -r29932 -r33042 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/controller/SterilizationRecordController.java (.../SterilizationRecordController.java) (revision 29932) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/controller/SterilizationRecordController.java (.../SterilizationRecordController.java) (revision 33042) @@ -367,7 +367,7 @@ } Map returnResult = sterilizationRecordManager.saveOrUpdateSterilizationRecord( sterilizationRecord, tousseInstanceBarcodes, - containerBarcodes, StringUtils.isNotBlank(recordId) ? Long.valueOf(recordId) : null,barcodePositionMap, null, null); + containerBarcodes, StringUtils.isNotBlank(recordId) ? Long.valueOf(recordId) : null,barcodePositionMap, null, null, null); JSONUtil.addProperty(result, JSONUtil.JSON_KEY_SUCCESS, returnResult.get(JSONUtil.JSON_KEY_SUCCESS)); JSONUtil.addProperty(result, JSONUtil.JSON_KEY_MESSAGE, returnResult.get(JSONUtil.JSON_KEY_MESSAGE)); } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java =================================================================== diff -u -r33037 -r33042 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 33037) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 33042) @@ -423,19 +423,8 @@ } } } - String delFormInstance = StrutsParamUtils.getPraramValue("delFormInstance", null); - if("true".equals(delFormInstance)){ - if(sterilizationRecord.getRunTableRecordFormInstance() != null){ - FormInstance formInstance = sterilizationRecord.getRunTableRecordFormInstance(); - sterilizationRecord.setRunTableRecordFormInstance(null); - objectDao.delete(formInstance); - } - if(sterilizationRecord.getSafetyCheckFormInstance() != null){ - FormInstance formInstance = sterilizationRecord.getSafetyCheckFormInstance(); - sterilizationRecord.setSafetyCheckFormInstance(null); - objectDao.delete(formInstance); - } - } + JSONObject paramObj = new JSONObject(); + paramObj.put("delFormInstance", StrutsParamUtils.getPraramValue("delFormInstance", null)); //判断是否从干预页面进入 if(StringUtils.isNotBlank(isInterfereStr)){ if(isInterfereStr.equals("true")){ @@ -470,7 +459,7 @@ }else{ Map result = sterilizationRecordManager.saveOrUpdateSterilizationRecord( sterilizationRecord, tousseInstanceBarcodes, - containerBarcodes, originalRecordId,barcodePositionMap, delTousseJsonArr, subTdAmountMap); + containerBarcodes, originalRecordId,barcodePositionMap, delTousseJsonArr, subTdAmountMap, paramObj); StrutsResponseUtils.output(JSONObject.fromObject(result)); }