Browse Source

Revert "配偶死亡原因未描述--宁波中医院规则添加"

This reverts commit b4905b3d
daiyi 3 years ago
parent
commit
9650f8b477

+ 0 - 104
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/ningbozhongyi/behospitalized/BEH0378.java

@@ -1,104 +0,0 @@
-package com.lantone.qc.kernel.catalogue.hospital.ningbozhongyi.behospitalized;
-
-import com.google.common.collect.Lists;
-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.Family;
-import com.lantone.qc.pub.model.label.FamilyLabel;
-import com.lantone.qc.pub.model.label.MaritalLabel;
-import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * @Description: 配偶死亡原因未描述
- * @author: rengb
- * @time: 2020/3/10 14:02
- */
-@Component
-public class BEH0378 extends QCCatalogue {
-
-    @Override
-    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status.set("0");
-        if (inputInfo.getBeHospitalizedDoc() == null) {
-            return;
-        }
-        FamilyLabel familyLabel = inputInfo.getBeHospitalizedDoc().getFamilyLabel();
-        MaritalLabel maritalLabel = inputInfo.getBeHospitalizedDoc().getMaritalLabel();
-
-        if (familyLabel == null || maritalLabel == null ||
-                StringUtil.isBlank(familyLabel.getText()) || StringUtil.isBlank(maritalLabel.getText())) {
-            return;
-        }
-        List<Family> familiesFl = null;
-        List<Family> familiesMl = null;
-
-        if (familyLabel != null) {
-            familiesFl = familyLabel.getFamilies();
-            //规则匹配
-            String familyText = familyLabel.getText();
-            if (StringUtil.isNotBlank(familyText) && (familyText.contains("自然死亡")|| familyText.matches("[\\s\\S]*(?=配偶因)[^,;,;。]{0,15}(?=已故)[\\s\\S]*"))) {
-                status.set("0");
-                return;
-            }
-        }
-        if (maritalLabel != null && maritalLabel.getFamily() != null) {
-            familiesMl = maritalLabel.getFamily();
-            if (familiesMl == null) {
-                return;
-            }
-            for (Family family : familiesMl) {
-                if (family.getDead() != null && family.getName() != null) {
-                    String maritalText = maritalLabel.getText();
-                    int index1 = maritalText.indexOf(family.getDead().getName());
-                    int index2 = maritalText.indexOf(family.getName());
-                    if (0 < index1 && index1 < index2 && maritalText.substring(index1, index2).contains(",")) {
-                        family.setDead(null);
-                    }
-                }
-            }
-        }
-        List<Family> familyList = Lists.newArrayList();
-
-        if (familiesFl != null && familiesFl.size() > 0) {
-            familyList.addAll(familiesFl);
-        }
-        if (familiesMl != null && familiesMl.size() > 0) {
-            familyList.addAll(familiesMl);
-        }
-
-        familyList = familyList
-                .stream()
-                .filter(
-                        i -> i != null
-                                && StringUtil.isNotBlank(i.getName())
-                                && i.getName().contains("配偶")
-                                && i.getDead() != null
-                                && StringUtil.isNotBlank(i.getDead().getName())
-                )
-                .collect(Collectors.toList());
-
-        if (familyList.size() > 0) {
-            status.set("-1");
-            long count = familyList
-                    .stream()
-                    .filter(
-                            i -> (i.getDead().getDeadReason() != null && StringUtil.isNotBlank(i.getDead().getDeadReason().getName()))
-                                    || (i.getDead().getUnknow() != null && StringUtil.isNotBlank(i.getDead().getUnknow().getName()))
-                    )
-                    .count();
-            if (count > 0) {
-                status.set("0");
-            }
-        }
-        String maritalText = maritalLabel.getText();
-        if (StringUtil.isNotBlank(maritalText) && maritalText.matches("[\\s\\S]*(?=配偶因)[^,;,;。]{0,15}(?=已故)[\\s\\S]*")) {
-            status.set("0");
-            return;
-        }
-    }
-}