Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/dwr/table/SterilizationRecordTableManager.java =================================================================== diff -u -r28863 -r29470 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/dwr/table/SterilizationRecordTableManager.java (.../SterilizationRecordTableManager.java) (revision 28863) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/dwr/table/SterilizationRecordTableManager.java (.../SterilizationRecordTableManager.java) (revision 29470) @@ -27,6 +27,7 @@ import com.forgon.disinfectsystem.basedatamanager.sterilisation.service.SterilisationManager; import com.forgon.disinfectsystem.basedatamanager.sterilizer.service.SterilizerManager; import com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager; +import com.forgon.disinfectsystem.entity.basedatamanager.bioreader.Bioreader; import com.forgon.disinfectsystem.entity.basedatamanager.container.Container; import com.forgon.disinfectsystem.entity.basedatamanager.deviceinterface.DeviceInterface; import com.forgon.disinfectsystem.entity.basedatamanager.sterilisation.Sterilisation; @@ -395,9 +396,11 @@ * @param controlTubeResult 对照管结果 * @param controlBatchNum 对照管批号 * @param controlTubeExpiryDate 对照管有效期 + * 以上参数是20190801新增 + * @param bioreaderId 生物阅读器id * @return */ - public boolean saveMonitorResult(String recordID, String physicsResult, + public boolean saveMonitorResult(String bioreaderId, String recordID, String physicsResult, String chemistryResult, String biologyResult,long cycleCounter, String biologicalObserveDateString, String biologicalMonitoringStartDateString, String biologicalMonitoringEndDateString, String monitorUser,String monitorChecker,String monitorAuditor,String remark, @@ -453,6 +456,11 @@ if("".equals(monitorAuditor)){ monitorAuditor = null; } + if(DatabaseUtil.isPoIdValid(bioreaderId)){ + Bioreader bioreader = new Bioreader(); + bioreader.setId(Long.valueOf(bioreaderId)); + record.setBioreader(bioreader); + } record.setCardPosition(cardPosition); record.setMonitoringTubeResult(monitoringTubeResult); record.setMonitoringBatchNum(monitoringBatchNum); Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/dwr/table/BioreaderTableManager.java =================================================================== diff -u -r25480 -r29470 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/dwr/table/BioreaderTableManager.java (.../BioreaderTableManager.java) (revision 25480) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/bioreader/dwr/table/BioreaderTableManager.java (.../BioreaderTableManager.java) (revision 29470) @@ -3,16 +3,25 @@ import java.util.List; import java.util.Map; +import net.sf.json.JSONObject; + +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringUtils; import com.forgon.component.grid.GridManager; import com.forgon.disinfectsystem.entity.basedatamanager.bioreader.Bioreader; +import com.forgon.tools.hibernate.ObjectDao; public class BioreaderTableManager { private GridManager gridManager; + private ObjectDao objectDao; + public void setObjectDao(ObjectDao objectDao) { + this.objectDao = objectDao; + } + public void setGridManager(GridManager gridManager) { this.gridManager = gridManager; } @@ -29,4 +38,28 @@ return gridManager.renderGrid(parameterMap, Bioreader.class .getSimpleName(), sql, new String[] {}); } + /** + * 通过灭菌炉名称获取灭菌炉绑定的生物阅读器 + * @param sterilizerName 灭菌炉名称 + * @return + */ + public String getBioreaderOfSterilizerBySterilizerName(String sterilizerName) { + JSONObject resultObj = null; + if(StringUtils.isBlank(sterilizerName)){ + return ""; + } + try { + String hql = " select po.bioreader from Sterilizer po where po.name='" + sterilizerName + "'"; + List bioreaders = objectDao.findByHql(hql); + if(CollectionUtils.isEmpty(bioreaders)){ + return ""; + } + resultObj = new JSONObject(); + resultObj.put("bioreaderId", bioreaders.get(0).getId()); + resultObj.put("bioreaderName", bioreaders.get(0).getBioreaderName()); + } catch (Exception e) { + e.printStackTrace(); + } + return resultObj == null?"":resultObj.toString(); + } } Index: ssts-web/src/test/java/test/forgon/disinfectsystem/sterileRecord/BiologyMonitoringWarningTest.java =================================================================== diff -u -r29230 -r29470 --- ssts-web/src/test/java/test/forgon/disinfectsystem/sterileRecord/BiologyMonitoringWarningTest.java (.../BiologyMonitoringWarningTest.java) (revision 29230) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/sterileRecord/BiologyMonitoringWarningTest.java (.../BiologyMonitoringWarningTest.java) (revision 29470) @@ -96,7 +96,7 @@ //模拟生物监测“进行中”的场景(此时生物监测状态为“进行中”,定时器不会修改其生物监测的状态,不需要提示) c.add(Calendar.MINUTE, 5); String time = ForgonDateUtils.safelyFormatDate(c.getTime(), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, ""); - sterilizationRecordTableManager.saveMonitorResult(sr1.getId().toString(), SterilizationRecord.MONITOR_RESULT_QUALIFIED, SterilizationRecord.MONITOR_RESULT_QUALIFIED, + sterilizationRecordTableManager.saveMonitorResult(null,sr1.getId().toString(), SterilizationRecord.MONITOR_RESULT_QUALIFIED, SterilizationRecord.MONITOR_RESULT_QUALIFIED, SterilizationRecord.MONITOR_RESULT_NO, 10, null,time, time, null, null, null, "备注",null,null,null,null,null,null,null,null); session.flush(); biologyMonitorWarningManager.timingUpdateBiologicalMonitoringStatus(Constants.TEST_NG); @@ -122,7 +122,7 @@ //模拟生物监测“已确认”的场景(此时生物监测状态为“已确认”,定时器不会修改其生物监测的状态) time = ForgonDateUtils.safelyFormatDate(c.getTime(), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, ""); - sterilizationRecordTableManager.saveMonitorResult(sr1.getId().toString(), SterilizationRecord.MONITOR_RESULT_QUALIFIED, SterilizationRecord.MONITOR_RESULT_QUALIFIED, + sterilizationRecordTableManager.saveMonitorResult(null,sr1.getId().toString(), SterilizationRecord.MONITOR_RESULT_QUALIFIED, SterilizationRecord.MONITOR_RESULT_QUALIFIED, SterilizationRecord.MONITOR_RESULT_QUALIFIED, 10, null, time, time, userName, userName, userName, "备注", null,null,null,null,null,null,null,null); session.flush(); assertEquals(sr1.getBiologicalMonitoringStatus(), SterilizationRecord.BIOLOGICALMONITORING_STATUS_CHECK);