Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r29544 -r29556 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 29544) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 29556) @@ -3799,6 +3799,7 @@ } jsonObj.put("success", 2); jsonObj.put("tousseInstanceArr", tousseInstanceArr); + jsonObj.put("includeImplant", td.getIncludeImplantStr()); }else{//已删除但未保存的数据 //获取已经删除但未更新状态的灭菌物品 List sterilizationTousseInsList = getTousseInsDataBySterilizationId(sterilizationRecordId, name, scanAmount, barcodeStr); @@ -3839,6 +3840,7 @@ } jsonObj.put("success", 2); jsonObj.put("tousseInstanceArr", tousseInstanceArr); + jsonObj.put("includeImplant", td.getIncludeImplantStr()); }else{ jsonObj.put("success", -1); jsonObj.put("failureCause", "加载完毕或者没有需要灭菌的包!"); @@ -3949,6 +3951,8 @@ List messageList = new ArrayList(); // 只要有一个包加急,篮筐就显示加急 boolean isBasketUrgent = false; + // 篮筐内的物品含有植入物 + boolean includeImplant = false; for (TousseInstance tousseInstance : tousseList) { String tousseName = tousseInstance.getTousseName(); if (tousseInstance != null && StringUtils.isNotBlank(tousseInstance.getTousseName())) { @@ -4013,6 +4017,13 @@ if(TousseDefinition.STR_YES .equals(isUrgentTousse)){ isBasketUrgent = true; } + if(!includeImplant){ + TousseDefinition tousseDefinition = tousseInstance.getTousseDefinition(); + Integer implant = tousseDefinition.getIncludeImplant(); + if(implant != null && implant.intValue() == TousseDefinition.INCLUDE_IMPLANT){ + includeImplant = true; + } + } if(!isCountBarcode){ cMap.put(tousseInstance.getBarcode(), temp); }else{ @@ -4050,6 +4061,7 @@ jsonObj.put("isUrgent", TousseDefinition.STR_NO); jsonObj.put("maxUrgentLevel", maxUrgentLevelInfo); } + jsonObj.put("includeImplant", includeImplant ? TousseDefinition.STR_YES : TousseDefinition.STR_NO); } } jsonObj.put("success", 1); @@ -4065,6 +4077,7 @@ Collections.sort(tousseInstanceList);//增加按id降序排序 TousseInstance tousseInstance = null; if(barcodeDevice instanceof TousseInstance){ + boolean includeImplant = false; Date now = new Date(); List messageList = new ArrayList(); JSONArray tousseInstanceArr = new JSONArray(); @@ -4111,6 +4124,13 @@ temp.put("urgentLevel",urgentLevelInfo); temp.put("urgentGrade",urgentGrade); temp.put("isUrgentTousse",tousseInstance.getIsUrgentTousse()); + if(!includeImplant){ + TousseDefinition tousseDefinition = tousseInstance.getTousseDefinition(); + Integer implant = tousseDefinition.getIncludeImplant(); + if(implant != null && implant.intValue() == TousseDefinition.INCLUDE_IMPLANT){ + includeImplant = true; + } + } tousseInstanceArr.add(temp); } } @@ -4123,12 +4143,15 @@ } jsonObj.put("success", 3); jsonObj.put("tousseInstanceArr", tousseInstanceArr); + jsonObj.put("includeImplant", includeImplant ? TousseDefinition.STR_YES : TousseDefinition.STR_NO); }else if(barcodeDevice instanceof Container){ Date now = new Date(); List messageList = new ArrayList(); JSONArray tousseInstanceArr = new JSONArray(); // 只要有一个包加急,篮筐就显示加急 boolean isBasketUrgent = false; + // 篮筐内的物品含有植入物 + boolean includeImplant = false; for(int i = 0;i < tousseInstanceList.size();i++){ tousseInstance = (TousseInstance)tousseInstanceList.get(i); //判断该包实例装配时原定的灭菌日期是否是今天以后 @@ -4176,6 +4199,13 @@ if(TousseDefinition.STR_YES .equals(isUrgentTousse)){ isBasketUrgent = true; } + if(!includeImplant){ + TousseDefinition tousseDefinition = tousseInstance.getTousseDefinition(); + Integer implant = tousseDefinition.getIncludeImplant(); + if(implant != null && implant.intValue() == TousseDefinition.INCLUDE_IMPLANT){ + includeImplant = true; + } + } tousseInstanceArr.add(temp); } } @@ -4204,6 +4234,7 @@ // jsonObj.put("success", 4); jsonObj.put("tousseInstanceArr", tousseInstanceArr); + jsonObj.put("includeImplant", includeImplant ? TousseDefinition.STR_YES : TousseDefinition.STR_NO); } }else{ jsonObj.put("success", -1); @@ -5957,7 +5988,6 @@ List sterilizationRecordList = objectDao.findByIds(SterilizationRecord.class.getSimpleName(), sterilizationRecordIdList); Map includeImplantMap = new HashMap(); if(CollectionUtils.isNotEmpty(sterilizationRecordList)){ - JSONArray newArray = new JSONArray(); String sql = String.format("select sr.id, td.includeImplant from %s sr join sterilization_tousseInstance sti on sr.id = sti.sterilizationRecord_id " + " join %s ti on ti.id = sti.tousseInstance_id " + " join %s td on ti.tousseDefinition_id = td.id " Index: ssts-web/src/main/java/com/forgon/disinfectsystem/systemwarning/service/SystemWarningManagerImpl.java =================================================================== diff -u -r29525 -r29556 --- ssts-web/src/main/java/com/forgon/disinfectsystem/systemwarning/service/SystemWarningManagerImpl.java (.../SystemWarningManagerImpl.java) (revision 29525) +++ ssts-web/src/main/java/com/forgon/disinfectsystem/systemwarning/service/SystemWarningManagerImpl.java (.../SystemWarningManagerImpl.java) (revision 29556) @@ -548,12 +548,16 @@ boolean enableSterilizerBioMonitoringIntervalReminder = ConfigUtils.getSystemSetConfigByNameBool("enableSterilizerBioMonitoringIntervalReminder", false); if(enableSterilizerBioMonitoringIntervalReminder){ - String hql = String.format(" from %s po where po.bioMonitoringInterval is not null ", Sterilizer.class.getSimpleName()); - List sterilizerList = objectDao.findByHql(hql); - //提示信息为:"【1号灭菌器】已超过6天未做生物监测,请做生物监测!" - List systemWarningItemVOs = getSterilizerBioMonitoringWarningVO(sterilizerList); - if(CollectionUtils.isNotEmpty(systemWarningItemVOs)){ - warningList.addAll(systemWarningItemVOs); + String currentOrgUnitCode = AcegiHelper.getCurrentOrgUnitCode(); + if(supplyRoomConfigManager.isFirstOrSecondSupplyRoomOrgUnit(currentOrgUnitCode)){ + String hql = String.format(" from %s po where po.bioMonitoringInterval is not null and po.orgUnitCoding = '%s' ", + Sterilizer.class.getSimpleName(), currentOrgUnitCode); + List sterilizerList = objectDao.findByHql(hql); + //提示信息为:"【1号灭菌器】已超过6天未做生物监测,请做生物监测!" + List systemWarningItemVOs = getSterilizerBioMonitoringWarningVO(sterilizerList); + if(CollectionUtils.isNotEmpty(systemWarningItemVOs)){ + warningList.addAll(systemWarningItemVOs); + } } }