|
@@ -10,10 +10,12 @@ import com.lantone.qc.pub.model.doc.DeathRecordDoc;
|
|
import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
|
|
import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
|
|
import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
|
|
import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
|
|
import com.lantone.qc.pub.util.StringUtil;
|
|
import com.lantone.qc.pub.util.StringUtil;
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
+import java.util.regex.Pattern;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @ClassName : THR0144
|
|
* @ClassName : THR0144
|
|
@@ -49,19 +51,26 @@ public class THR0144 extends QCCatalogue {
|
|
String conditionRecord = structureMap.get("病情记录");
|
|
String conditionRecord = structureMap.get("病情记录");
|
|
String treatmentPlan = structureMap.get("治疗计划和措施");
|
|
String treatmentPlan = structureMap.get("治疗计划和措施");
|
|
String title = structureMap.get("查房标题");
|
|
String title = structureMap.get("查房标题");
|
|
- if (StringUtil.isBlank(title) || title.contains("病理报告")) {
|
|
|
|
|
|
+ String ob = structureMap.get("记录医师个人职称");
|
|
|
|
+ if ( title.contains("病理报告")) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
conditionRecord = StringUtil.isBlank(conditionRecord) ? "" : conditionRecord;
|
|
conditionRecord = StringUtil.isBlank(conditionRecord) ? "" : conditionRecord;
|
|
treatmentPlan = StringUtil.isBlank(treatmentPlan) ? "" : treatmentPlan;
|
|
treatmentPlan = StringUtil.isBlank(treatmentPlan) ? "" : treatmentPlan;
|
|
//主任或主治查房 标题需要包含“主任”或“主治”,内容需要包含“出院”
|
|
//主任或主治查房 标题需要包含“主任”或“主治”,内容需要包含“出院”
|
|
- if ((conditionRecord.contains("出院") || treatmentPlan.contains("出院") || conditionRecord.contains("转上级医院"))
|
|
|
|
|
|
+ if (StringUtils.isNotBlank(title) && (conditionRecord.contains("出院") || treatmentPlan.contains("出院") || leave_method(treatmentPlan))
|
|
&& (CatalogueUtil.subTitle(title).contains(Content.attend)
|
|
&& (CatalogueUtil.subTitle(title).contains(Content.attend)
|
|
|| CatalogueUtil.subTitle(title).contains(Content.director)
|
|
|| CatalogueUtil.subTitle(title).contains(Content.director)
|
|
|| CatalogueUtil.subTitle(title).contains("主刀"))) {
|
|
|| CatalogueUtil.subTitle(title).contains("主刀"))) {
|
|
status.set("0");
|
|
status.set("0");
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
+ //title为空,treatmentPlan里包含出院或转院,记录医师职称为A/F
|
|
|
|
+ if(StringUtils.isBlank(title) && StringUtils.isNotBlank(ob) && (conditionRecord.contains("出院") || treatmentPlan.contains("出院") || leave_method(treatmentPlan))
|
|
|
|
+ && (ob.equals("A") || ob.equals("F"))){
|
|
|
|
+ status.set("0");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
//普通查房 内容需要包含“上级”和“出院”
|
|
//普通查房 内容需要包含“上级”和“出院”
|
|
if (StringUtil.isBlank(title)
|
|
if (StringUtil.isBlank(title)
|
|
|| (title.contains("日常查房记录") || title.contains("普通查房记录") || title.contains("日常病程记录"))
|
|
|| (title.contains("日常查房记录") || title.contains("普通查房记录") || title.contains("日常病程记录"))
|
|
@@ -72,4 +81,11 @@ public class THR0144 extends QCCatalogue {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ public boolean leave_method(String content){
|
|
|
|
+ String compile = "(?<=转)(.+)(?=院)";
|
|
|
|
+ Pattern p = Pattern.compile(compile);
|
|
|
|
+ boolean b = p.matcher(content).find();
|
|
|
|
+ return b;
|
|
|
|
+ }
|
|
}
|
|
}
|