|
@@ -3103,19 +3103,22 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> tumorRadiationMethod(Map<String, Double> medManageParams,List<Map<String, String>> retList, Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
//接受肿瘤放射治疗的质控病历总数
|
|
|
- double count = medManageParams.get("tumorRadiationResult");
|
|
|
+ Double count = medManageParams.get("tumorRadiationResult");
|
|
|
String num = null;
|
|
|
+ if( null == count){
|
|
|
+ count = 0d;
|
|
|
+ }
|
|
|
if(StringUtils.isNotEmpty(String.valueOf(count)) && count != 0d){
|
|
|
double tumorRadiationDo = currencyCal(count, triggeringRulesMap.get("tumorRadiationNum"));//triggeringRules(filterVO)
|
|
|
num = String.valueOf(tumorRadiationDo);
|
|
|
if(tumorRadiationDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",String.valueOf(count));
|
|
|
};
|
|
|
|
|
|
firMap.put("name","恶性肿瘤放射治疗记录符合率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ firMap.put("num",String.valueOf(count));
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
}
|
|
@@ -3124,7 +3127,10 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> implantsMethod(Map<String, Double> medManageParams,List<Map<String, String>> retList, Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
//使用植入物的质控病历总数
|
|
|
- double count = medManageParams.get("implantsResult");
|
|
|
+ Double count = medManageParams.get("implantsResult");
|
|
|
+ if( null == count){
|
|
|
+ count = 0d;
|
|
|
+ }
|
|
|
String num = null;
|
|
|
if(StringUtils.isNotEmpty(String.valueOf(count)) && count != 0d){
|
|
|
double implantsDo = currencyCal(count, triggeringRulesMap.get("implantsNum"));//triggeringRules(filterVO)
|
|
@@ -3132,11 +3138,11 @@ public class ConsoleFacade {
|
|
|
if(implantsDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",String.valueOf(count));
|
|
|
};
|
|
|
|
|
|
firMap.put("name","植入物相关记录符合率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ firMap.put("num",String.valueOf(count));
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
}
|
|
@@ -3145,7 +3151,10 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> rescueMethod( Map<String, Double> medManageParams, List<Map<String, String>> retList,Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
//接受抢救的质控病历总数
|
|
|
- double count = medManageParams.get("rescueResult");
|
|
|
+ Double count = medManageParams.get("rescueResult");
|
|
|
+ if( null == count){
|
|
|
+ count = 0d;
|
|
|
+ }
|
|
|
String num = null;
|
|
|
if(StringUtils.isNotEmpty(String.valueOf(count)) && count != 0d){
|
|
|
double rescueDo = currencyCal(count, triggeringRulesMap.get("rescueNum"));
|
|
@@ -3153,11 +3162,11 @@ public class ConsoleFacade {
|
|
|
if(rescueDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",String.valueOf(count));
|
|
|
};
|
|
|
|
|
|
firMap.put("name","患者抢救记录及时完成率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ firMap.put("num",String.valueOf(count));
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
};
|
|
@@ -3166,16 +3175,21 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> WardRoundMethod( List<Map<String, String>> retList, Map<String, Object> baseIndex, Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
String num = null;
|
|
|
+ Object forWorkNum = baseIndex.get("forWorkNum");
|
|
|
if( triggeringRulesMap.containsKey("WardRoundNum") && baseIndex.containsKey("forWorkNum") && !baseIndex.get("forWorkNum").toString().equals("0")){
|
|
|
double wardRoundDo = currencyCal(baseIndex.get("forWorkNum"), triggeringRulesMap.get("WardRoundNum"));
|
|
|
num = String.valueOf(wardRoundDo);
|
|
|
if(wardRoundDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
};
|
|
|
firMap.put("name","医师查房记录完成率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ if(null == forWorkNum){
|
|
|
+ firMap.put("num","0");
|
|
|
+ }else{
|
|
|
+ firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
+ }
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
}
|
|
@@ -3185,16 +3199,21 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> unreasonedCopyMethod( List<Map<String, String>> retList, Map<String, Object> baseIndex, Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
String num = null;
|
|
|
- if( triggeringRulesMap.containsKey("unreasonedCopyNum") && baseIndex.containsKey("forWorkNum") && !baseIndex.get("forWorkNum").toString().equals("0")){
|
|
|
+ Object forWorkNum = baseIndex.get("forWorkNum");
|
|
|
+ if( triggeringRulesMap.containsKey("unreasonedCopyNum") && baseIndex.containsKey("forWorkNum") && !baseIndex.get("forWorkNum").toString().equals("0")){
|
|
|
double wardRoundDo = currencyCal(baseIndex.get("forWorkNum"), triggeringRulesMap.get("unreasonedCopyNum"));
|
|
|
num = String.valueOf(wardRoundDo);
|
|
|
if(wardRoundDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
};
|
|
|
firMap.put("name","不合理复制病历发生率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ if(null == forWorkNum){
|
|
|
+ firMap.put("num","0");
|
|
|
+ }else{
|
|
|
+ firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
+ }
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
};
|
|
@@ -3203,6 +3222,7 @@ public class ConsoleFacade {
|
|
|
//指标二十三 知情同意书规范签署率
|
|
|
private List<Map<String, String>> contentSignMethod(List<Map<String, String>> retList, Map<String, Object> baseIndex, Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
+ Object forWorkNum = baseIndex.get("forWorkNum");
|
|
|
String num = null;
|
|
|
if( triggeringRulesMap.containsKey("InformedNum") && baseIndex.containsKey("forWorkNum") && !baseIndex.get("forWorkNum").toString().equals("0")){
|
|
|
double InformedDo = currencyCal(baseIndex.get("forWorkNum"), triggeringRulesMap.get("InformedNum"));
|
|
@@ -3210,10 +3230,15 @@ public class ConsoleFacade {
|
|
|
if(InformedDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
}
|
|
|
firMap.put("name","知情同意书规范签署率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ if(null == forWorkNum){
|
|
|
+ firMap.put("num","0");
|
|
|
+ }else{
|
|
|
+ firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
+ }
|
|
|
+
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
}
|
|
@@ -3222,6 +3247,9 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> operationMethod(Map<String, Double> medManageParams, List<Map<String, String>>retList, Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
String operationFeeNum = medManageParams.get("operationFeeNum")+"";
|
|
|
+ if(StringUtils.isEmpty(operationFeeNum)){
|
|
|
+ operationFeeNum = "0";
|
|
|
+ }
|
|
|
String num = null;
|
|
|
if( triggeringRulesMap.containsKey("operationRecordNum") && StringUtils.isNotEmpty(operationFeeNum) && ! operationFeeNum.equals("0")){
|
|
|
double operationRecordDo = currencyCal(operationFeeNum, triggeringRulesMap.get("operationRecordNum"));
|
|
@@ -3229,13 +3257,13 @@ public class ConsoleFacade {
|
|
|
if(operationRecordDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",operationFeeNum);
|
|
|
};
|
|
|
firMap.put("name","手术相关记录完成率");
|
|
|
if("0.0".equals(num)){
|
|
|
num = "0.00";
|
|
|
}
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ firMap.put("num",operationFeeNum);
|
|
|
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
@@ -3244,7 +3272,10 @@ public class ConsoleFacade {
|
|
|
//指标十六 临床用血相关记录符合率
|
|
|
private List<Map<String, String>> bloodMethod( List<Map<String, String>>retList,Map<String, Double> bloodRes,Map<String, Long> triggeringRulesMap){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
- double count = bloodRes.get("bloodResult");
|
|
|
+ Double count = bloodRes.get("bloodResult");
|
|
|
+ if( null == count){
|
|
|
+ count = 0d;
|
|
|
+ }
|
|
|
String num = null;
|
|
|
if(StringUtils.isNotEmpty(String.valueOf(count)) && count != 0d){
|
|
|
//指标十七
|
|
@@ -3253,11 +3284,11 @@ public class ConsoleFacade {
|
|
|
if(bloodDo<0d){
|
|
|
num = null;
|
|
|
}
|
|
|
- firMap.put("num",String.valueOf(count));
|
|
|
}
|
|
|
|
|
|
firMap.put("name","临床用血相关记录符合率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ firMap.put("num",String.valueOf(count));
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
}
|
|
@@ -3277,17 +3308,26 @@ public class ConsoleFacade {
|
|
|
private List<Map<String, String>> getfileSecAmount(Map<String, Double> medManageParams, List<Map<String, String>>retList, Map<String, Object> baseIndex){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
DecimalFormat df = new DecimalFormat("#0.00");
|
|
|
- double count = medManageParams.get("secFileResult");
|
|
|
+ Double count = medManageParams.get("secFileResult");
|
|
|
+ Object forWorkNum = baseIndex.get("forWorkNum");
|
|
|
+ if( null == count){
|
|
|
+ count = 0d;
|
|
|
+ }
|
|
|
String num = null;
|
|
|
- if(StringUtils.isNotEmpty( baseIndex.get("sevenWorkNum").toString()) && ! baseIndex.get("sevenWorkNum").toString().equals("0") ){
|
|
|
- double retNum =count* 100/Double.parseDouble(baseIndex.get("sevenWorkNum").toString());
|
|
|
+ if(StringUtils.isNotEmpty( baseIndex.get("forWorkNum").toString()) && ! baseIndex.get("forWorkNum").toString().equals("0") ){
|
|
|
+ double retNum =count* 100/Double.parseDouble(baseIndex.get("forWorkNum").toString());
|
|
|
double firGradeStr = Double.parseDouble(df.format(retNum));
|
|
|
num = String.valueOf(firGradeStr);
|
|
|
- firMap.put("num",baseIndex.get("sevenWorkNum").toString());
|
|
|
+
|
|
|
}
|
|
|
|
|
|
firMap.put("name","出院患者病历2日归档率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ if(null == forWorkNum){
|
|
|
+ firMap.put("num","0");
|
|
|
+ }else{
|
|
|
+ firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
+ }
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
};
|
|
@@ -3295,16 +3335,24 @@ public class ConsoleFacade {
|
|
|
//指标21 --出院患者病历归档完整率
|
|
|
private List<Map<String, String>> fileCompleteMethod(Map<String, Double> medManageParams, List<Map<String, String>>retList, Map<String, Object> baseIndex){
|
|
|
LinkedHashMap<String, String> firMap = new LinkedHashMap<>();
|
|
|
- double count = medManageParams.get("fileCompleteResult");
|
|
|
+ Double count = medManageParams.get("fileCompleteResult");
|
|
|
+ Object forWorkNum = baseIndex.get("forWorkNum");
|
|
|
+ if( null == count){
|
|
|
+ count = 0d;
|
|
|
+ }
|
|
|
String num = null;
|
|
|
if(StringUtils.isNotEmpty( baseIndex.get("forWorkNum").toString()) && ! baseIndex.get("forWorkNum").toString().equals("0") ){
|
|
|
double retNum = currencyCal( baseIndex.get("forWorkNum").toString(),count);
|
|
|
num = String.valueOf(retNum);
|
|
|
- firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
}
|
|
|
|
|
|
firMap.put("name","出院患者病历归档完整率");
|
|
|
firMap.put("notCopiedStr",StringUtils.isEmpty(num) ? "0.00%":(num+"%"));
|
|
|
+ if(null == forWorkNum){
|
|
|
+ firMap.put("num","0");
|
|
|
+ }else{
|
|
|
+ firMap.put("num",baseIndex.get("forWorkNum").toString());
|
|
|
+ }
|
|
|
retList.add(firMap);
|
|
|
return retList;
|
|
|
}
|
|
@@ -3402,10 +3450,10 @@ public class ConsoleFacade {
|
|
|
double retNum = Double.parseDouble(baseIndex.get("sixWorkNum").toString()) * 100 / firRecord;
|
|
|
double firGradeStr = Double.parseDouble(df.format(retNum));
|
|
|
num4 = String.valueOf(firGradeStr);
|
|
|
- fouMap.put("num",String.valueOf(firRecord));
|
|
|
}
|
|
|
fouMap.put("name","甲级病历率");
|
|
|
fouMap.put("notCopiedStr",StringUtils.isEmpty(num4) ? "0.00%":(num4+"%"));
|
|
|
+ fouMap.put("num",String.valueOf(firRecord));
|
|
|
retList.add(fouMap);
|
|
|
return retList;
|
|
|
};
|