|
@@ -1,5 +1,6 @@
|
|
package org.diagbot.service.impl;
|
|
package org.diagbot.service.impl;
|
|
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import org.diagbot.entity.node.LIS;
|
|
import org.diagbot.entity.node.LIS;
|
|
import org.diagbot.entity.node.Symptom;
|
|
import org.diagbot.entity.node.Symptom;
|
|
@@ -196,104 +197,136 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
return map;
|
|
return map;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 推送疑诊,鉴别诊断,急诊,指标推送,不良反应,管理评估
|
|
|
|
+ * @param searchData
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
@Override
|
|
@Override
|
|
public ResponseData getDis(SearchData searchData) {
|
|
public ResponseData getDis(SearchData searchData) {
|
|
ResponseData responseData = new ResponseData();
|
|
ResponseData responseData = new ResponseData();
|
|
|
|
+ Set<String> queZhen = new HashSet<>();
|
|
|
|
+ Map<String, Map<String, String>> diseaseCondition = new LinkedHashMap<>();
|
|
|
|
+ String webDiag = searchData.getDiag();
|
|
String[] featureTypes = searchData.getFeatureType().split(",");
|
|
String[] featureTypes = searchData.getFeatureType().split(",");
|
|
List<String> featureTypeList = Arrays.asList(featureTypes);
|
|
List<String> featureTypeList = Arrays.asList(featureTypes);
|
|
logger.info("前端传来的features :"+featureTypeList);
|
|
logger.info("前端传来的features :"+featureTypeList);
|
|
- List<String> newList = new ArrayList<>();
|
|
|
|
- List<String> inputList = new ArrayList<>();
|
|
|
|
Map<String, Map<String, String>> inputs = searchData.getInputs();
|
|
Map<String, Map<String, String>> inputs = searchData.getInputs();
|
|
Integer diseaseType = searchData.getDisType();
|
|
Integer diseaseType = searchData.getDisType();
|
|
logger.info("diseaseType为 :"+diseaseType);
|
|
logger.info("diseaseType为 :"+diseaseType);
|
|
Set<String> ss = inputs.keySet();
|
|
Set<String> ss = inputs.keySet();
|
|
logger.info("分词系统传来的词: "+ss);
|
|
logger.info("分词系统传来的词: "+ss);
|
|
logger.info("图谱开始根据传来的分词计算诊断.....");
|
|
logger.info("图谱开始根据传来的分词计算诊断.....");
|
|
- inputList.addAll(ss);
|
|
|
|
- //图谱计算是否有组合词
|
|
|
|
- List<Map<String, Object>> collectionWord = baseNodeRepository.getCollectionWord(inputList);
|
|
|
|
- if(collectionWord !=null && collectionWord.size()>0){
|
|
|
|
- for (Map<String, Object> word:collectionWord) {
|
|
|
|
- String jundgement = word.get("jundgement").toString();
|
|
|
|
- String standName = word.get("standName").toString();
|
|
|
|
- if("TRUE".equals(jundgement)){
|
|
|
|
- inputList.add(standName);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- List<Map<String, Object>> collectJYWord = baseNodeRepository.getCollectJYWord(inputList);
|
|
|
|
- if(collectJYWord !=null && collectJYWord.size()>0){
|
|
|
|
- for (Map<String, Object> word:collectJYWord) {
|
|
|
|
- String fild = word.get("fild").toString();
|
|
|
|
- String[] typeCollect = (String[])word.get("typeCollect");
|
|
|
|
- if(typeCollect.length == 1 && "近义词".equals(typeCollect[0])){
|
|
|
|
- List<Map<String, Object>> jyWord = baseNodeRepository.getJYWord(fild);
|
|
|
|
- if(jyWord !=null && jyWord.size()>0){
|
|
|
|
- for (Map<String, Object> ji:jyWord) {
|
|
|
|
- String js = ji.get("js").toString();
|
|
|
|
- inputList.remove(fild);
|
|
|
|
- inputList.add(js);
|
|
|
|
- }
|
|
|
|
|
|
+ //开始推送诊断逻辑,包括推送疑诊,急诊,鉴别诊断
|
|
|
|
+ if (featureTypeList != null && featureTypeList.contains("7")){
|
|
|
|
+ //第一,二步查询输入的词所在number
|
|
|
|
+ Set<String> fildInNumber = this.getNumber(ss);
|
|
|
|
+ //第三步查找疑诊
|
|
|
|
+ List<Map<String, Object>> fildDis = baseNodeRepository.getFildDis(fildInNumber);
|
|
|
|
+ if(fildDis != null && fildDis.size()>0){
|
|
|
|
+ for (Map<String, Object> disMap:fildDis) {
|
|
|
|
+ String relationType = disMap.get("relationType").toString();
|
|
|
|
+ String name = disMap.get("name").toString();
|
|
|
|
+ if("确诊".equals(relationType)){
|
|
|
|
+ queZhen.add(name);
|
|
|
|
+ }else if("拟诊".equals(relationType)){
|
|
|
|
+ queZhen.add(name);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }
|
|
|
|
- newList.addAll(inputList);
|
|
|
|
- while (newList.size()>0){
|
|
|
|
- List<Map<String, Object>> condition = baseNodeRepository.getCondition(newList, inputList);
|
|
|
|
- newList.clear();
|
|
|
|
- if(condition !=null && condition.size()>0){
|
|
|
|
- for (Map<String, Object> cd:condition) {
|
|
|
|
- String conditionName = cd.get("condition").toString();
|
|
|
|
- String jundgement = cd.get("jundgement").toString();
|
|
|
|
- if ("true".equals(jundgement)) {
|
|
|
|
- newList.add(conditionName);
|
|
|
|
- inputList.add(conditionName);
|
|
|
|
|
|
+ logger.info("图谱推出的疑诊为: "+queZhen);
|
|
|
|
+ for (String que:queZhen) {
|
|
|
|
+ Map<String,String> titleMap = new HashMap<>();
|
|
|
|
+ titleMap.put("确诊","");
|
|
|
|
+ diseaseCondition.put(que,titleMap);
|
|
|
|
+ }
|
|
|
|
+ //第四步查找鉴别诊断
|
|
|
|
+ String mainDiag = null;//主诊断
|
|
|
|
+ if(webDiag != null && !"".equals(webDiag)){
|
|
|
|
+ String[] webDiagSplits = webDiag.split(",");
|
|
|
|
+ mainDiag = webDiagSplits[0];
|
|
|
|
+ }
|
|
|
|
+ if(mainDiag != null){
|
|
|
|
+ //走鉴别诊断逻辑
|
|
|
|
+ List<String> diffDis = baseNodeRepository.getDiffDis(mainDiag);
|
|
|
|
+ if(diffDis != null && diffDis.size()>0){
|
|
|
|
+ for (String diff:diffDis) {
|
|
|
|
+ if (queZhen.contains(diff)) {
|
|
|
|
+ Map<String, String> stringStringMap = diseaseCondition.get(diff);
|
|
|
|
+ stringStringMap.put("鉴别诊断", "");
|
|
|
|
+ diseaseCondition.put(diff, stringStringMap);
|
|
|
|
+ } else {
|
|
|
|
+ Map<String, String> diffMap = new HashMap<>();
|
|
|
|
+ diffMap.put("鉴别诊断", "");
|
|
|
|
+ diseaseCondition.put(diff, diffMap);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }
|
|
|
|
- List<String> que = new ArrayList<>();
|
|
|
|
- List<Map<String, Object>> disease = baseNodeRepository.getDisease(inputList);
|
|
|
|
- if(disease !=null && disease.size()>0){
|
|
|
|
- for (Map<String, Object> d: disease) {
|
|
|
|
- String diseaseName = d.get("name").toString();
|
|
|
|
- String relationType = d.get("relationType").toString();
|
|
|
|
- if("确诊".equals(relationType) || "拟诊".equals(relationType)){
|
|
|
|
- que.add(diseaseName);
|
|
|
|
|
|
+ //急诊逻辑
|
|
|
|
+ List<String> emergency = baseNodeRepository.getEmergency(diseaseCondition.keySet());
|
|
|
|
+ if(emergency!=null && emergency.size()>0){
|
|
|
|
+ for (String em:emergency) {
|
|
|
|
+ Map<String, String> stringStringMap = diseaseCondition.get(em);
|
|
|
|
+ stringStringMap.put("急诊","");
|
|
|
|
+ diseaseCondition.put(em,stringStringMap);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }
|
|
|
|
- logger.info("图谱计算出来的诊断为: "+que);
|
|
|
|
- List<FeatureRate> featureRates = new ArrayList<>();
|
|
|
|
- if(que !=null && que.size()>0){
|
|
|
|
- for (String quezhen:que) {
|
|
|
|
- if(!"低血糖反应".equals(quezhen) && !"胃肠道不良反应".equals(quezhen)
|
|
|
|
- && !"肾功能不全".equals(quezhen)){
|
|
|
|
|
|
+ List<FeatureRate> featureRates = new ArrayList<>();
|
|
|
|
+ if(diseaseCondition != null){
|
|
|
|
+ for (Map.Entry<String, Map<String,String>> d : diseaseCondition.entrySet()) {
|
|
FeatureRate featureRate = new FeatureRate();
|
|
FeatureRate featureRate = new FeatureRate();
|
|
- featureRate.setFeatureName(quezhen);
|
|
|
|
|
|
+ featureRate.setFeatureName(d.getKey());
|
|
featureRate.setExtraProperty("");
|
|
featureRate.setExtraProperty("");
|
|
- featureRate.setDesc(quezhen);
|
|
|
|
|
|
+ Map<String, String> value = d.getValue();
|
|
|
|
+ String s = JSON.toJSONString(value);
|
|
|
|
+ featureRate.setDesc(s);
|
|
featureRate.setRate("neo4j");
|
|
featureRate.setRate("neo4j");
|
|
featureRates.add(featureRate);
|
|
featureRates.add(featureRate);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ responseData.setDis(featureRates);
|
|
}
|
|
}
|
|
- String webDiag = searchData.getDiag();
|
|
|
|
- logger.info("界面输入的诊断为: "+webDiag);
|
|
|
|
- if(webDiag.trim()!=null && webDiag.trim() !="" && featureTypeList.contains("8")){
|
|
|
|
|
|
+ Set<String> que = diseaseCondition.keySet();
|
|
|
|
+ logger.info("图谱计算出来的诊断(包含疑诊,急诊,鉴别诊断)为: "+que);
|
|
|
|
+
|
|
|
|
+ //推送治疗,包含不良反应
|
|
|
|
+ if(webDiag!=null && webDiag.trim() !="" && featureTypeList.contains("8")){
|
|
logger.info("界面有诊断,并且features包含8,可以走治疗方案");
|
|
logger.info("界面有诊断,并且features包含8,可以走治疗方案");
|
|
- Map<String, Filnlly> mulDiseaseTreat = processTreat(webDiag, ss,diseaseType,que);
|
|
|
|
|
|
+ //查找页面诊断里是否有不良反应(慢病的情况下)
|
|
|
|
+ Map<String, List<String>> disUE = new HashMap<>();
|
|
|
|
+ String[] webDiagList = webDiag.split(",|,|、|;|:|;");
|
|
|
|
+ List<Map<String, Object>> untowardEffect = baseNodeRepository.getUntowardEffect(webDiagList);
|
|
|
|
+ if(untowardEffect.size()>0){
|
|
|
|
+ for (Map<String, Object> ue:untowardEffect) {
|
|
|
|
+ String dis = ue.get("dis").toString();
|
|
|
|
+ String [] ueCollect = (String [])ue.get("ueCollect");
|
|
|
|
+ List<String> ueList = Arrays.asList(ueCollect);
|
|
|
|
+ disUE.put(dis,ueList);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //根据页面输入内容推出的不良反应集合
|
|
|
|
+ Set<String> ue = this.getUe(ss);
|
|
|
|
+ // webDiag:界面诊断,ss:分词,diseaseType:疾病类型,que:疑诊,鉴别诊断,急诊集合
|
|
|
|
+ Map<String, Filnlly> mulDiseaseTreat = processTreat(webDiag, ss,diseaseType,que,disUE,ue);
|
|
responseData.setTreat(mulDiseaseTreat);
|
|
responseData.setTreat(mulDiseaseTreat);
|
|
}
|
|
}
|
|
|
|
+ int age = searchData.getAge();
|
|
|
|
+ String sex = searchData.getSex();
|
|
|
|
+ //指标推送
|
|
if(featureTypeList.contains("22") && que != null && que.size()>0){
|
|
if(featureTypeList.contains("22") && que != null && que.size()>0){
|
|
logger.info("图谱推送有疑诊,并且features包含22,可以走右侧推送");
|
|
logger.info("图谱推送有疑诊,并且features包含22,可以走右侧推送");
|
|
List<MedicalIndication> medicalIndicationList = new ArrayList<>();
|
|
List<MedicalIndication> medicalIndicationList = new ArrayList<>();
|
|
- MedicalIndication medicalIndication = this.getMedicalIndication(que);
|
|
|
|
- medicalIndicationList.add(medicalIndication);
|
|
|
|
- responseData.setMedicalIndications(medicalIndicationList);
|
|
|
|
|
|
+ //根据传来的词推送指标
|
|
|
|
+ Set<String> ind = this.getInd(ss);
|
|
|
|
+ logger.info("图谱推出的指标为: "+ind);
|
|
|
|
+ List<MedicalIndication> medicalIndications = this.indProcess(ind, sex, age);
|
|
|
|
+ responseData.setMedicalIndications(medicalIndications);
|
|
|
|
+// MedicalIndication medicalIndication = this.getMedicalIndication(que);
|
|
|
|
+// medicalIndicationList.add(medicalIndication);
|
|
|
|
+// responseData.setMedicalIndications(medicalIndicationList);
|
|
}
|
|
}
|
|
|
|
+ //推送管理评估
|
|
if(featureTypeList.contains("11") && diseaseType == 1 && diseaseType !=null) {
|
|
if(featureTypeList.contains("11") && diseaseType == 1 && diseaseType !=null) {
|
|
logger.info("featureTypeList 包含11,走管理评估!!!");
|
|
logger.info("featureTypeList 包含11,走管理评估!!!");
|
|
// MangementEvaluation mangementEvaluation = this.getMangementEvaluation();
|
|
// MangementEvaluation mangementEvaluation = this.getMangementEvaluation();
|
|
@@ -302,7 +335,6 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
Map test = this.getTest();
|
|
Map test = this.getTest();
|
|
responseData.setManagementEvaluation(test);
|
|
responseData.setManagementEvaluation(test);
|
|
}
|
|
}
|
|
- responseData.setDis(featureRates);
|
|
|
|
return responseData;
|
|
return responseData;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -393,6 +425,80 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
return lisPacsFeature;
|
|
return lisPacsFeature;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //查询词所在number,及有用的condition
|
|
|
|
+ public Set<String> getNumber(Set<String> ss){
|
|
|
|
+ List<String> newList = new ArrayList<>();
|
|
|
|
+ Set<String> fildInNumber = baseNodeRepository.getFildInNumber(ss);
|
|
|
|
+ newList.addAll(fildInNumber);
|
|
|
|
+ //第二步查询符合的condition4
|
|
|
|
+ while (newList.size()>0){
|
|
|
|
+ List<String> fildInCondition = baseNodeRepository.getFildInCondition(newList, fildInNumber);
|
|
|
|
+ newList.clear();
|
|
|
|
+ if(fildInCondition != null && fildInCondition.size()>0){
|
|
|
|
+ for (String condition:fildInCondition) {
|
|
|
|
+ newList.add(condition);
|
|
|
|
+ fildInNumber.add(condition);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return fildInNumber;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 根据内容推出不良反应集合
|
|
|
|
+ * @param ss 分词
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public Set<String> getUe(Set<String> ss){
|
|
|
|
+ Set<String> number = getNumber(ss);
|
|
|
|
+ Set<String> ueSet = baseNodeRepository.pushUntowardEffects(number);
|
|
|
|
+ return ueSet;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 根据传来的词推送指标
|
|
|
|
+ * @param ss
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public Set<String> getInd(Set<String> ss){
|
|
|
|
+ Set<String> number = getNumber(ss);
|
|
|
|
+ Set<String> indSet = baseNodeRepository.pushInd(number);
|
|
|
|
+ return indSet;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 指标推送处理
|
|
|
|
+ * @param indSet 指标集合
|
|
|
|
+ * @param sex 性别
|
|
|
|
+ * @param age 年龄
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public List<MedicalIndication> indProcess(Set<String> indSet,String sex,Integer age){
|
|
|
|
+ List<MedicalIndication> medicalIndicationList = new ArrayList<>();
|
|
|
|
+ if (indSet != null && indSet.size() > 0) {
|
|
|
|
+ for (String s : indSet) {
|
|
|
|
+ MedicalIndication medicalIndication = new MedicalIndication();
|
|
|
|
+ List<MedicalIndicationDetail> medicalIndicationDetailList = new ArrayList<>();
|
|
|
|
+ medicalIndication.setName(s);
|
|
|
|
+ MedicalIndicationDetail medicalIndicationDetail1 = null;
|
|
|
|
+ MedicalIndicationDetail medicalIndicationDetail2 = null;
|
|
|
|
+ MedicalIndicationDetail medicalIndicationDetail3 = null;
|
|
|
|
+ JSONObject gongshiJson = null;
|
|
|
|
+ List<JSONObject> detailList = null;
|
|
|
|
+ List<JSONObject> resultList = null;
|
|
|
|
+ List<JSONObject> sexList = null;
|
|
|
|
+ List<JSONObject> shiFouList = null;
|
|
|
|
+ JSONObject shiFouJson = null;
|
|
|
|
+ Set<String> results = new LinkedHashSet<>();
|
|
|
|
+ List<Map<String, Object>> allSortMaps = baseNodeRepository.allSort(s);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return medicalIndicationList;
|
|
|
|
+ }
|
|
|
|
+
|
|
public Map<String, Set<String>> processLisPacs(List<String> webDiagList) {
|
|
public Map<String, Set<String>> processLisPacs(List<String> webDiagList) {
|
|
Map<String, Set<String>> lisPacsMap = new HashMap<>();
|
|
Map<String, Set<String>> lisPacsMap = new HashMap<>();
|
|
List<String> lisArray = new ArrayList<>();
|
|
List<String> lisArray = new ArrayList<>();
|
|
@@ -418,7 +524,7 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
* 处理治疗
|
|
* 处理治疗
|
|
* @param
|
|
* @param
|
|
*/
|
|
*/
|
|
- public Map<String, Filnlly> processTreat(String webDisease,Set<String> inputFilds,Integer disType,List<String> que){
|
|
|
|
|
|
+ public Map<String, Filnlly> processTreat(String webDisease,Set<String> inputFilds,Integer disType,Set<String> que,Map<String, List<String>> disUE,Set<String> ue){
|
|
Map<String, Filnlly> diagTreat = new HashMap<>();
|
|
Map<String, Filnlly> diagTreat = new HashMap<>();
|
|
NumberFormat nf = NumberFormat.getPercentInstance();
|
|
NumberFormat nf = NumberFormat.getPercentInstance();
|
|
nf.setMinimumFractionDigits(0);//设置该百分比数字,保留2位小数;
|
|
nf.setMinimumFractionDigits(0);//设置该百分比数字,保留2位小数;
|
|
@@ -431,6 +537,14 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
for (String fild:inputFilds) {
|
|
for (String fild:inputFilds) {
|
|
fildsList.add(fild);
|
|
fildsList.add(fild);
|
|
}
|
|
}
|
|
|
|
+ if(que != null && que.size()>0){
|
|
|
|
+ for (String yizhen : que) {
|
|
|
|
+ fildsList.add(yizhen );
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ for (String h : ue) {
|
|
|
|
+ fildsList.add(h);
|
|
|
|
+ }
|
|
for (int j = 0; j < diseaseList.size(); j++) {
|
|
for (int j = 0; j < diseaseList.size(); j++) {
|
|
if (i != j) {
|
|
if (i != j) {
|
|
fildsList.add(diseaseList.get(j));
|
|
fildsList.add(diseaseList.get(j));
|
|
@@ -566,12 +680,15 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
//走不良反应
|
|
//走不良反应
|
|
if(disType !=null && 1==disType){
|
|
if(disType !=null && 1==disType){
|
|
logger.info("disType=1,可以走不良反应!!");
|
|
logger.info("disType=1,可以走不良反应!!");
|
|
- List<Indicators> indicatorsList1 = new ArrayList<>();
|
|
|
|
- Indicators indicators1 = getAdverse(que, "低血糖反应");
|
|
|
|
- Indicators indicators2 = getAdverse(que, "胃肠道不良反应");
|
|
|
|
- indicatorsList1.add(indicators1);
|
|
|
|
- indicatorsList1.add(indicators2);
|
|
|
|
- filnlly.setAdverseEvent(indicatorsList1);
|
|
|
|
|
|
+ List<String> diseUeList = disUE.get(disFild.getKey());
|
|
|
|
+ if (diseUeList != null && diseUeList.size() > 0) {
|
|
|
|
+ List<Indicators> indicatorsList1 = new ArrayList<>();
|
|
|
|
+ for (String de : diseUeList) {
|
|
|
|
+ Indicators indicators1 = getAdverse(ue, de);
|
|
|
|
+ indicatorsList1.add(indicators1);
|
|
|
|
+ }
|
|
|
|
+ filnlly.setAdverseEvent(indicatorsList1);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
filnlly.setTreatment(drugsList);
|
|
filnlly.setTreatment(drugsList);
|
|
diagTreat.put(disFild.getKey(),filnlly);
|
|
diagTreat.put(disFild.getKey(),filnlly);
|
|
@@ -584,7 +701,7 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
* @param diseaseSet 图谱推出的诊断
|
|
* @param diseaseSet 图谱推出的诊断
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public MedicalIndication getMedicalIndication(List<String> diseaseSet){
|
|
|
|
|
|
+ public MedicalIndication getMedicalIndication(Set<String> diseaseSet){
|
|
MedicalIndication medicalIndication = new MedicalIndication();
|
|
MedicalIndication medicalIndication = new MedicalIndication();
|
|
if(diseaseSet.contains("肾功能不全")){
|
|
if(diseaseSet.contains("肾功能不全")){
|
|
logger.info("diseaseSet中包含肾功能不全");
|
|
logger.info("diseaseSet中包含肾功能不全");
|
|
@@ -835,7 +952,7 @@ public class KnowledgeServiceImpl implements KnowledgeService {
|
|
* @param name
|
|
* @param name
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public Indicators getAdverse(List<String> dis,String name){
|
|
|
|
|
|
+ public Indicators getAdverse(Set<String> dis,String name){
|
|
List<Detail> detailList1 = new ArrayList<>();
|
|
List<Detail> detailList1 = new ArrayList<>();
|
|
Indicators indicators1 = new Indicators();
|
|
Indicators indicators1 = new Indicators();
|
|
indicators1.setName(name);
|
|
indicators1.setName(name);
|