|
@@ -55,6 +55,33 @@ public class NingBoZhongYiLeaveHospitalHtmlAnalysis implements NingBoZhongYiHtml
|
|
|
structureMap.put("出院诊断", discharge.substring(0, index));
|
|
|
structureMap.put("入院情况", discharge.substring(index + 4));
|
|
|
}
|
|
|
+ if (structureMap.containsKey("出院诊断") && StringUtil.isNotBlank(structureMap.get("出院诊断"))){
|
|
|
+ String discharge = structureMap.get("出院诊断");
|
|
|
+ StringBuilder sb = new StringBuilder();
|
|
|
+ int num =0;
|
|
|
+ if(discharge.contains("中医诊断") && !discharge.contains("西医诊断")){
|
|
|
+ String zdischarge = discharge.split("中医诊断")[1].replace(":","");
|
|
|
+ num = extractDischarge(num, sb, zdischarge);
|
|
|
+
|
|
|
+ }
|
|
|
+ if(discharge.contains("中医诊断") && discharge.contains("西医诊断")){
|
|
|
+ String zdischarge = discharge.split("西医诊断")[0].split("中医诊断")[1].replace(":","");
|
|
|
+ String xdischarge = discharge.split("西医诊断")[1].replace(":","");
|
|
|
+ num = extractDischarge(num,sb,zdischarge);
|
|
|
+ String[] xleaveDiags = xdischarge.split(",?,?[0-9]\\.");
|
|
|
+ for (String leaveDiag : xleaveDiags) {
|
|
|
+ leaveDiag = leaveDiag.trim();
|
|
|
+ if(StringUtil.isNotBlank(leaveDiag)){
|
|
|
+ num++;
|
|
|
+ sb.append(num+"."+leaveDiag.trim());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ if(StringUtil.isNotBlank(sb.toString())){
|
|
|
+ structureMap.put("出院诊断",sb.toString());
|
|
|
+ }
|
|
|
+ }
|
|
|
CommonAnalysisUtil.extractDateByTitle(structureMap, "时间");
|
|
|
NingBoZhongYiHtmlAnalysisUtil.insertModuleId(modeId, recTypeId, structureMap);
|
|
|
} catch (Exception e) {
|
|
@@ -62,4 +89,25 @@ public class NingBoZhongYiLeaveHospitalHtmlAnalysis implements NingBoZhongYiHtml
|
|
|
}
|
|
|
return structureMap;
|
|
|
}
|
|
|
+
|
|
|
+ public int extractDischarge( int num, StringBuilder sb,String zdischarge){
|
|
|
+ String rex =",?,?[0-9]\\.";
|
|
|
+ boolean matches = zdischarge.matches(rex);
|
|
|
+ String[] zleaveDiags = null;
|
|
|
+ if(matches){
|
|
|
+ zleaveDiags = zdischarge.split(",?,?[0-9]\\.");
|
|
|
+ }else{
|
|
|
+ zleaveDiags = zdischarge.split(" ");
|
|
|
+ }
|
|
|
+ if(null != zleaveDiags || zleaveDiags.length>0){
|
|
|
+ for (String zleaveDiag : zleaveDiags) {
|
|
|
+ zleaveDiag = zleaveDiag.trim();
|
|
|
+ if(StringUtil.isNotBlank(zleaveDiag)){
|
|
|
+ num++;
|
|
|
+ sb.append(num+"."+zleaveDiag);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return num;
|
|
|
+ }
|
|
|
}
|