|
@@ -3,6 +3,8 @@ package com.lantone.qc.kernel.catalogue.beilun.behospitalized;
|
|
|
import com.lantone.qc.kernel.catalogue.QCCatalogue;
|
|
|
import com.lantone.qc.pub.model.InputInfo;
|
|
|
import com.lantone.qc.pub.model.OutputInfo;
|
|
|
+import com.lantone.qc.pub.model.entity.Clinical;
|
|
|
+import com.lantone.qc.pub.model.entity.Diag;
|
|
|
import com.lantone.qc.pub.model.entity.PD;
|
|
|
import com.lantone.qc.pub.model.label.ChiefLabel;
|
|
|
import com.lantone.qc.pub.util.StringUtil;
|
|
@@ -22,7 +24,11 @@ import java.util.Map;
|
|
|
@Component
|
|
|
public class BEH0001 extends QCCatalogue {
|
|
|
|
|
|
+ private List<String> containList = Arrays.asList("检查", "术后", "药物", "发现", "误服", "确诊", "经", "异常", "诊断"
|
|
|
+ , "示", "超", "伤", "术", "复查", "体检", "血透", "血液透析");
|
|
|
+
|
|
|
public void start(InputInfo inputInfo, OutputInfo outputInfo) {
|
|
|
+ //主诉缺少主症状不提示信息
|
|
|
if (outputInfo != null && outputInfo.getResult() != null) {
|
|
|
Map<String, Object> outputMap = outputInfo.getResult().get("BEH0009");
|
|
|
if (outputMap != null && "-1".equals(outputMap.get("status"))) {
|
|
@@ -30,6 +36,7 @@ public class BEH0001 extends QCCatalogue {
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
if (inputInfo.getBeHospitalizedDoc() == null) {
|
|
|
status.set("0");
|
|
|
return;
|
|
@@ -44,6 +51,34 @@ public class BEH0001 extends QCCatalogue {
|
|
|
status.set("0");
|
|
|
return;
|
|
|
}
|
|
|
+ // 暂时逻辑,BEH0009执行在BEH0001之前时可以撤销
|
|
|
+ boolean isExistence = true;
|
|
|
+ List<Clinical> clinicals = chiefLabel.getClinicals();
|
|
|
+ if (clinicals != null && clinicals.size() > 0) {
|
|
|
+ isExistence = false;
|
|
|
+ }
|
|
|
+ for (String word : containList) {
|
|
|
+ if (chiefText.contains(word)) {
|
|
|
+ isExistence = false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ List<Diag> diags = chiefLabel.getDiags();
|
|
|
+ if (diags != null && diags.size() > 0) {
|
|
|
+ for (Diag diag : diags) {
|
|
|
+ String hospitalDiagName = diag.getHospitalDiagName();
|
|
|
+ if (hospitalDiagName.contains("术后") || hospitalDiagName.contains("癌") ||
|
|
|
+ hospitalDiagName.contains("瘤") || hospitalDiagName.contains("复诊")) {
|
|
|
+ isExistence = false;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //主诉缺少主症状不提示信息
|
|
|
+ if (isExistence) {
|
|
|
+ status.set("0");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
if (StringUtil.isNotBlank(chiefText)) {
|
|
|
if (chiefText.contains("检查") || chiefText.contains("术后") || chiefText.contains("药物")
|
|
|
|| chiefText.contains("天") || chiefText.contains("周") || chiefText.contains("月")
|