Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r29413 -r29427 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 29413) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 29427) @@ -4315,6 +4315,7 @@ obj.put("urgentLevel", urgentLevelInfo);//加急信息 obj.put("urgentGrade", urgentGrade);//加急等级 obj.put("maxUrgentGrade", urgentGrade);//最高加急等级,用于排序 + obj.put("sterilingMode", tousse.getSterilingMode()); //覆盖 bMap.put(key, obj); } @@ -4745,18 +4746,19 @@ String sqlSelect_UrgentLevel = String.format(" ,ul.colorCode ulColorCode ,ul.grade ulGrade, ul.name ulName , ul.id ulId "); //拼接sql语句 if(reviewedBasket != null && DatabaseUtil.isPoIdValid(reviewedBasket.getId())){ - queryTousseSql.append("select td.id tdId, td.includeImplant, b.barcode,po.tousseName,po.depart,po.sterilingMode,tdAncestor.isTraceable,po.isUrgentTousse,po.sterilingType "); + queryTousseSql.append("select td.id tdId, td.includeImplant, b.barcode,po.tousseName,po.depart,(case when tdAncestor.isTraceable ='" + TousseDefinition.STR_YES + "' then po.sterilingMode else s.sterilizationMode end) sterilingMode,tdAncestor.isTraceable,po.isUrgentTousse,po.sterilingType "); queryTousseSql.append(sqlSelect_UrgentLevel); queryTousseSql.append(",po.proxyDisinfection_id,tdAncestor.tousseType,tdAncestor.isForeignTousse,po.proxyDisinfection_id " + "from " + TousseInstance.class.getSimpleName() + " po " + sqlJoin_UrgentLevel + "join " + BarcodeDevice.class.getSimpleName() + " b on po.id=b.id " + "join "+ TousseDefinition.class.getSimpleName() +" td on po.tousseDefinition_id=td.id " + "join "+ TousseDefinition.class.getSimpleName() +" tdAncestor on td.ancestorId=tdAncestor.id " + + "left join " + Sterilisation.class.getSimpleName() + " s on s.sterilisation = tdAncestor.sterilingMethod " + "where po.reviewBasket_id=" + reviewedBasket.getId()); return getTousseVoDataFromDbForGetTousseSimpleVOsBySterilizationRecord(queryTousseSql.toString()); }else if(sterilizationRecord != null && DatabaseUtil.isPoIdValid(sterilizationRecord.getId())){ - queryTousseSql.append("select td.id tdId, td.includeImplant, b.barcode,po.tousseName,po.depart,po.sterilingMode,tdAncestor.isTraceable,po.isUrgentTousse,po.sterilingType "); + queryTousseSql.append("select td.id tdId, td.includeImplant, b.barcode,po.tousseName,po.depart,(case when tdAncestor.isTraceable ='" + TousseDefinition.STR_YES + "' then po.sterilingMode else s.sterilizationMode end) sterilingMode,tdAncestor.isTraceable,po.isUrgentTousse,po.sterilingType "); queryTousseSql.append(sqlSelect_UrgentLevel); queryTousseSql.append(",po.proxyDisinfection_id,tdAncestor.tousseType,tdAncestor.isForeignTousse,po.proxyDisinfection_id " + "from " + TousseInstance.class.getSimpleName() + " po " @@ -4765,6 +4767,7 @@ + "join "+ TousseDefinition.class.getSimpleName() +" td on po.tousseDefinition_id=td.id " + "join "+ TousseDefinition.class.getSimpleName() +" tdAncestor on td.ancestorId=tdAncestor.id " + "join sterilization_tousseInstance st on st.tousseInstance_id=po.id " + + "left join " + Sterilisation.class.getSimpleName() + " s on s.sterilisation = tdAncestor.sterilingMethod " + "where st.sterilizationRecord_id=" + sterilizationRecord.getId()); return getTousseVoDataFromDbForGetTousseSimpleVOsBySterilizationRecord(queryTousseSql.toString()); }