Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java =================================================================== diff -u -r33042 -r34289 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 33042) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 34289) @@ -457,10 +457,12 @@ } } }else{ - Map result = sterilizationRecordManager.saveOrUpdateSterilizationRecord( - sterilizationRecord, tousseInstanceBarcodes, - containerBarcodes, originalRecordId,barcodePositionMap, delTousseJsonArr, subTdAmountMap, paramObj); - StrutsResponseUtils.output(JSONObject.fromObject(result)); + Map result = sterilizationRecordManager.saveOrUpdateSterilizationRecord( + sterilizationRecord, tousseInstanceBarcodes, + containerBarcodes, originalRecordId,barcodePositionMap, delTousseJsonArr, subTdAmountMap, paramObj); + //同步千樱脉动真空灭菌炉运行参数XJJQZYY-115 + sterilizationRecordManager.syncSenohSterilizerRecord(sterilizationRecord); + StrutsResponseUtils.output(JSONObject.fromObject(result)); } }catch(SterilingModeNotTheSameException e){ Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManager.java =================================================================== diff -u -r33733 -r34289 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManager.java (.../SterilizationRecordManager.java) (revision 33733) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManager.java (.../SterilizationRecordManager.java) (revision 34289) @@ -628,4 +628,10 @@ * @return */ public String getOtherSterilizationRecordsSql(Long sterilizationRecordId); + + /** + * 同步千樱灭菌炉的运行参数 + * @param sterilizationRecord + */ + public void syncSenohSterilizerRecord(SterilizationRecord sterilizationRecord); } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r34276 -r34289 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 34276) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 34289) @@ -2348,9 +2348,6 @@ if(enableScanSterilizationMonitoringPackage){ isNeedScanMonitoringTousse(sterilizationRecord); } - - // 同步千樱脉动真空灭菌炉运行参数 - syncSenohSterilizerRecord(sterilizationRecord); return result; } @@ -2359,30 +2356,37 @@ * 同步千樱脉动真空灭菌炉运行参数 * @param sterilizationRecord */ - private void syncSenohSterilizerRecord(SterilizationRecord sterilizationRecord) { - if(sterilizationRecord == null || !DatabaseUtil.isPoIdValid(sterilizationRecord.getId())){ - throw new RuntimeException("灭菌记录不能为空!"); + @Override + public void syncSenohSterilizerRecord(SterilizationRecord sterilizationRecord) { + try { + if(sterilizationRecord == null || !DatabaseUtil.isPoIdValid(sterilizationRecord.getId())){ + logger.error("灭菌记录不能为空!"); + return; + } + + if(!sterilizationRecord.isSterilizationBegin()){ + return; + } + + int delay = getFirstDelay(sterilizationRecord); + if(delay < 0){ + return; + } + Sterilizer sterilizer = sterilizationRecord.getSterilizer(); + if(sterilizer == null){ + logger.error("灭菌炉不能为空!"); + return; + } + DeviceInterface deviceInterface = sterilizer.getDeviceInterface(); + if(deviceInterface != null && StringUtils.equals(deviceInterface.getDeviceBrand(), DeviceInterface.SENOH)){ + if(senohSterilizerRecordManager == null){ + return; + } + readSenohSterilizerRecord(sterilizationRecord.getId(), delay); + } + } catch (Exception e) { + logger.error("读取灭菌炉参数失败:" + e.getMessage()); } - - if(!sterilizationRecord.isSterilizationBegin()){ - return; - } - - int delay = getFirstDelay(sterilizationRecord); - if(delay < 0){ - return; - } - Sterilizer sterilizer = sterilizationRecord.getSterilizer(); - if(sterilizer == null){ - throw new RuntimeException("灭菌炉不能为空!"); - } - DeviceInterface deviceInterface = sterilizer.getDeviceInterface(); - if(deviceInterface != null && StringUtils.equals(deviceInterface.getDeviceBrand(), DeviceInterface.SENOH)){ - if(senohSterilizerRecordManager == null){ - return; - } - readSenohSterilizerRecord(sterilizationRecord.getId(), delay); - } } /**