|
@@ -153,6 +153,20 @@ public class NeoFacade {
|
|
|
Map<String, String> disAgeClass = nodeRepository.getDisAgeClass();
|
|
|
return disAgeClass;
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 返回图谱中所有疾病和发病率信息
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Cacheable(value = "cache", key = "'disdistributionCache'")
|
|
|
+ public Map<String,Float> getDisdistributionCache() {
|
|
|
+ Map<String,Float> disdistribution = new HashMap<>();
|
|
|
+ Map<String, String> disdistributionClass = nodeRepository.getDisdistributionClass();
|
|
|
+ disdistributionClass.forEach((x,y) ->{
|
|
|
+ disdistribution.put(x,Float.parseFloat(y));
|
|
|
+ });
|
|
|
+ return disdistribution;
|
|
|
+ }
|
|
|
/**
|
|
|
* 图谱反推的数据
|
|
|
*
|
|
@@ -233,6 +247,10 @@ public class NeoFacade {
|
|
|
|
|
|
Map<Long,List<String>> numberDiseasesMap = disCountSort(allDis);
|
|
|
//根据发病率排序
|
|
|
+ Map<String, Float> disdistributionCache = getDisdistributionCache();
|
|
|
+ numberDiseasesMap.forEach((x,y) ->{
|
|
|
+
|
|
|
+ });
|
|
|
|
|
|
// String dis_first = dis_count.entrySet().stream().map(x -> x.getKey()).collect(Collectors.toList()).get(0);
|
|
|
|
|
@@ -246,7 +264,6 @@ public class NeoFacade {
|
|
|
long start = System.currentTimeMillis();
|
|
|
List<String> allDis_bySymptom = pushDis(symptomNameRepository, symptoms);
|
|
|
long end = System.currentTimeMillis();
|
|
|
- System.out.println("并行消耗:"+(end - start) / 1000.0 + "秒");
|
|
|
return allDis_bySymptom;
|
|
|
}
|
|
|
|