Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/push-dev' into push-debug

louhr 5 anni fa
parent
commit
964b42fa27

+ 5 - 5
bigdata-web/src/main/java/org/diagbot/bigdata/work/ResultDataProxy.java

@@ -68,11 +68,11 @@ public class ResultDataProxy {
                 }
             }
             featureList.add(featureRate);
-                if (cursor < searchData.getLength()) {
-                    cursor++;
-                } else {
-                    break;
-                }
+//                if (cursor < searchData.getLength()) {
+//                    cursor++;
+//                } else {
+//                    break;
+//                }
         }
 
         return featureList;

+ 6 - 0
push-web/src/main/java/org/diagbot/push/controller/AlgorithmController.java

@@ -228,6 +228,12 @@ public class AlgorithmController extends BaseController {
         List<FeatureRate> upfes = classifyDiag.filterDiag(graphResponseData, pushDiags);
         List<FeatureRate> classify = classifyDiag.diagClassify(upfes);
         List<FeatureRate> featureRates = classifyDiag.sortDiag(classify);
+        if (featureRates.size() > searchData.getLength()) {
+            featureRates = featureRates.subList(0, searchData.getLength());
+        }
+        if (bigDataResponseData.getSymptom().size() > searchData.getLength()) {
+            bigDataResponseData.setSymptom(bigDataResponseData.getSymptom().subList(0, searchData.getLength()));
+        }
         bigDataResponseData.setDis(featureRates);
         //返回结果化验、辅检、体征、进行性别年龄过滤
         ResultDataProxy resultDataProxy = new ResultDataProxy();

+ 62 - 36
rule/src/main/java/org/diagbot/rule/crisis/CrisisApplication.java

@@ -89,50 +89,76 @@ public class CrisisApplication {
                     }
                 }
                 if (allRuleIdsSuit) {
-                    if (StringUtils.isEmpty(appRemindVar)) {
-                        appRemindVar = remind;
-                    } else {
-                        appRemindVar = appRemindVar + "," + remind;
-                    }
-                    if (StringUtils.isEmpty(appOriginText)) {
-                        appOriginText = originText;
-                    } else {
-                        appOriginText = appOriginText + "," + originText;
+//                    if (StringUtils.isEmpty(appRemindVar)) {
+//                        appRemindVar = remind;
+//                    } else {
+//                        appRemindVar = appRemindVar + "," + remind;
+//                    }
+//                    if (StringUtils.isEmpty(appOriginText)) {
+//                        appOriginText = originText;
+//                    } else {
+//                        appOriginText = appOriginText + "," + originText;
+//                    }
+//
+//                    if (StringUtils.isEmpty(appHisName)) {
+//                        appHisName = hisName;
+//                    } else {
+//                        appHisName = appHisName + "," + hisName;
+//                    }
+//
+//                    hasAppSuit = true;
+
+                    CrisisDetail crisisDetail = new CrisisDetail();
+                    crisisDetail.setOriginText(originText);
+                    crisisDetail.setRemindText(app.getValue().getRemind().replace("${remind}", remind));
+                    crisisDetail.setTypeId(app.getValue().getTypeId());
+                    crisisDetail.setHisName(hisName);
+
+                    if (!StringUtils.isEmpty(hisName)) {
+                        crisisDetail.setRemindText(crisisDetail.getRemindText() + "【" + hisName + "】");
                     }
 
-                    if (StringUtils.isEmpty(appHisName)) {
-                        appHisName = hisName;
-                    } else {
-                        appHisName = appHisName + "," + hisName;
+                    crisisList = crisisMap.get(key);
+                    if (crisisList == null) {
+                        crisisList = new ArrayList<>();
                     }
-
-                    hasAppSuit = true;
+                    boolean isHave = false;
+                    for (CrisisDetail c : crisisList) {
+                        if (c.getRemindText().equals(crisisDetail.getRemindText())) {
+                            isHave = true;
+                        }
+                    }
+                    if (!isHave) {
+                        System.out.println("remind_text:" + crisisDetail.getRemindText());
+                        crisisList.add(crisisDetail);
+                    }
+                    crisisMap.put(key, crisisList);
                 }
             }
             //所有规则都满足
             if (hasAppSuit) {
 
-                CrisisDetail crisisDetail = new CrisisDetail();
-                crisisDetail.setOriginText(appOriginText);
-                crisisDetail.setRemindText(app.getValue().getRemind().replace("${remind}", appRemindVar));
-                crisisDetail.setTypeId(app.getValue().getTypeId());
-                crisisDetail.setHisName(appHisName);
-
-                crisisList = crisisMap.get(key);
-                if (crisisList == null) {
-                    crisisList = new ArrayList<>();
-                }
-                boolean isHave = false;
-                for (CrisisDetail c : crisisList) {
-                    if (c.getRemindText().equals(crisisDetail.getRemindText())) {
-                        isHave = true;
-                    }
-                }
-                if (!isHave) {
-                    System.out.println("remind_text:" + crisisDetail.getRemindText());
-                    crisisList.add(crisisDetail);
-                }
-                crisisMap.put(key, crisisList);
+//                CrisisDetail crisisDetail = new CrisisDetail();
+//                crisisDetail.setOriginText(appOriginText);
+//                crisisDetail.setRemindText(app.getValue().getRemind().replace("${remind}", appRemindVar));
+//                crisisDetail.setTypeId(app.getValue().getTypeId());
+//                crisisDetail.setHisName(appHisName);
+//
+//                crisisList = crisisMap.get(key);
+//                if (crisisList == null) {
+//                    crisisList = new ArrayList<>();
+//                }
+//                boolean isHave = false;
+//                for (CrisisDetail c : crisisList) {
+//                    if (c.getRemindText().equals(crisisDetail.getRemindText())) {
+//                        isHave = true;
+//                    }
+//                }
+//                if (!isHave) {
+//                    System.out.println("remind_text:" + crisisDetail.getRemindText());
+//                    crisisList.add(crisisDetail);
+//                }
+//                crisisMap.put(key, crisisList);
             }
         }
         //针对同时出现"血压:高血压1级"、"血压:高血压3级"...只取等级高的