|
@@ -13,8 +13,6 @@ import org.springframework.stereotype.Component;
|
|
|
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
-import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @ClassName : BEH03051
|
|
@@ -60,50 +58,43 @@ public class BEH03051 extends QCCatalogue {
|
|
|
}
|
|
|
|
|
|
List<Diag> initDiags = initialDiagLabel.getDiags();
|
|
|
- List<String> initDiagStrs = initDiags
|
|
|
- .stream()
|
|
|
- .map(Diag::getHospitalDiagName)
|
|
|
- .filter(Objects::nonNull)
|
|
|
- .collect(Collectors.toList());
|
|
|
-
|
|
|
- if (initDiagStrs.size() == 0) {
|
|
|
- return;
|
|
|
- }
|
|
|
- for (String initDiagStr : initDiagStrs) {
|
|
|
- if (diagVital.containsKey(initDiagStr)) {
|
|
|
- String vitals = diagVital.get(initDiagStr);
|
|
|
- String[] vitalArr = vitals.split("\\|");
|
|
|
- String vitalAnd = vitalArr[0];//体征且的关系,每个必须有
|
|
|
- for (String vitalInfo : vitalAnd.split("/")) {
|
|
|
- String[] vitalInfoArr = vitalInfo.split(":");
|
|
|
- String vital = "";
|
|
|
- if (!vitalSpecialText.contains(vitalInfoArr[0])) {
|
|
|
- status.set("-1");
|
|
|
- if (vitalInfoArr.length > 1) {
|
|
|
- vital = ":" + vitalInfoArr[1];
|
|
|
+ if (initDiags.size() > 0) {
|
|
|
+ String firstInitDiag = initDiags.get(0).getHospitalDiagName();
|
|
|
+ if (StringUtil.isNotBlank(firstInitDiag)) {
|
|
|
+ if (diagVital.containsKey(firstInitDiag)) {
|
|
|
+ String vitals = diagVital.get(firstInitDiag);
|
|
|
+ String[] vitalArr = vitals.split("\\|");
|
|
|
+ String vitalAnd = vitalArr[0];//体征且的关系,每个必须有
|
|
|
+ for (String vitalInfo : vitalAnd.split("/")) {
|
|
|
+ String[] vitalInfoArr = vitalInfo.split(":");
|
|
|
+ String vital = "";
|
|
|
+ if (!vitalSpecialText.contains(vitalInfoArr[0])) {
|
|
|
+ status.set("-1");
|
|
|
+ if (vitalInfoArr.length > 1) {
|
|
|
+ vital = ":" + vitalInfoArr[1];
|
|
|
+ }
|
|
|
+ info.set(firstInitDiag + vital);
|
|
|
+ return;
|
|
|
}
|
|
|
- info.set(initDiagStr + vital);
|
|
|
- return;
|
|
|
}
|
|
|
- }
|
|
|
- if (vitalArr.length == 2) {
|
|
|
- String vitalOr = vitalArr[1];//体征或的关系,有一个就行
|
|
|
- int existNum = 0;
|
|
|
- String vital = "";
|
|
|
- for (String vitalInfo : vitalOr.split("/")) {
|
|
|
- String[] vitalInfoArr = vitalInfo.split(":");
|
|
|
- if (vitalSpecialText.contains(vitalInfoArr[0])) {
|
|
|
- existNum++;
|
|
|
+ if (vitalArr.length == 2) {
|
|
|
+ String vitalOr = vitalArr[1];//体征或的关系,有一个就行
|
|
|
+ int existNum = 0;
|
|
|
+ String vital = "";
|
|
|
+ for (String vitalInfo : vitalOr.split("/")) {
|
|
|
+ String[] vitalInfoArr = vitalInfo.split(":");
|
|
|
+ if (vitalSpecialText.contains(vitalInfoArr[0])) {
|
|
|
+ existNum++;
|
|
|
+ }
|
|
|
+ if (vitalInfoArr.length > 1) {
|
|
|
+ vital = ":" + vitalInfoArr[1];
|
|
|
+ }
|
|
|
}
|
|
|
- if (vitalInfoArr.length > 1) {
|
|
|
- vital = ":" + vitalInfoArr[1];
|
|
|
+ if (existNum == 0) {
|
|
|
+ status.set("-1");
|
|
|
+ info.set(firstInitDiag + vital);
|
|
|
}
|
|
|
}
|
|
|
- if (existNum == 0) {
|
|
|
- status.set("-1");
|
|
|
- info.set(initDiagStr + vital);
|
|
|
- return;
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
}
|