|
@@ -151,80 +151,80 @@ public class AlgorithmController extends BaseController {
|
|
|
|
|
|
//大数据推送
|
|
|
// searchData.setLength(6); //模型推送最多6个比较合理
|
|
|
- AlgorithmCore core = new AlgorithmCore();
|
|
|
- ResponseData bigDataResponseData = core.algorithm(request, searchData, responseData);
|
|
|
-
|
|
|
- GraphCalculate graphCalculate = new GraphCalculate();
|
|
|
- ResponseData graphResponseData = graphCalculate.calculate(request, searchData);
|
|
|
- if (graphResponseData.getDis().size() > 0) {
|
|
|
- List<FeatureRate> disFeatureRates = new ArrayList<>();
|
|
|
- List<FeatureRate> bigdis = bigDataResponseData.getDis();
|
|
|
- List<FeatureRate> graphdis = graphResponseData.getDis();
|
|
|
- for (FeatureRate bg:graphdis) {
|
|
|
- Iterator<FeatureRate> iterator = bigdis.iterator();
|
|
|
- while (iterator.hasNext()){
|
|
|
- FeatureRate gd = iterator.next();
|
|
|
- if(gd.getFeatureName().equals(bg.getFeatureName()) &&(bg.getDesc().contains("确诊")|| bg.getDesc().contains("拟诊"))){
|
|
|
- iterator.remove();
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- disFeatureRates = bigdis;
|
|
|
- List<FeatureRate> graphFeatureRates = graphResponseData.getDis();
|
|
|
- graphFeatureRates.addAll(disFeatureRates);
|
|
|
- bigDataResponseData.setDis(graphFeatureRates);
|
|
|
- }
|
|
|
- //归一之前诊断信息
|
|
|
- bigDataResponseData.setBeforeCombineDis(bigDataResponseData.getDis());
|
|
|
- //推送出的诊断信息作为参数传入知识图谱
|
|
|
- List<FeatureRate> pushDiags = new ArrayList<>();
|
|
|
- pushDiags.addAll(bigDataResponseData.getDis());
|
|
|
- searchData.setPushDiags(pushDiags);
|
|
|
- bigDataResponseData.setTreat(graphResponseData.getTreat());
|
|
|
-
|
|
|
- //量表和指标推送
|
|
|
- Map<String, List<CrisisDetail>> crisisDetails = responseData.getCrisisDetails();
|
|
|
- List<MedicalIndication> crisisDetailsList = this.getCrisisDetails(crisisDetails);
|
|
|
- List<MedicalIndication> medicalIndications = graphResponseData.getMedicalIndications();
|
|
|
- if (medicalIndications == null) {
|
|
|
- medicalIndications = new ArrayList<>();
|
|
|
- }
|
|
|
- medicalIndications.addAll(crisisDetailsList);
|
|
|
- if (medicalIndications != null && medicalIndications.size() > 0) {
|
|
|
- logger.info("指标推送!!!!!!!!!");
|
|
|
- // bigDataResponseData.getMedicalIndications().addAll(medicalIndications);
|
|
|
- bigDataResponseData.setMedicalIndications(medicalIndications);
|
|
|
- }
|
|
|
-
|
|
|
- //推送管理评估
|
|
|
- bigDataResponseData.setManagementEvaluation(graphResponseData.getManagementEvaluation());
|
|
|
-
|
|
|
- //知识图谱直接替换大数据中的检验检查数据
|
|
|
- Map<String, List<FeatureRate>> lisPacs = graphCalculate.getLisPacs(request, searchData);
|
|
|
- bigDataResponseData.setLabs(lisPacs.get("lisList"));
|
|
|
- bigDataResponseData.setPacs(lisPacs.get("pacsList"));
|
|
|
- //体征结果和指标推送
|
|
|
- Map<String, String> vitalCache = CacheUtil.getVitalCache();
|
|
|
- List<String> featureList = Arrays.asList(searchData.getFeatureTypes());
|
|
|
- List<FeatureRate> vitals = lisPacs.get("vitalResultList");
|
|
|
- if (featureList.contains(Constants.feature_type_vital_index) && this.getVital(vitalCache, vitals).size() > 0) {
|
|
|
- bigDataResponseData.setVitals(this.getVital(vitalCache, vitals));
|
|
|
-
|
|
|
- }
|
|
|
- if (featureList.contains(Constants.feature_type_vital) && vitals.size() > 0) {
|
|
|
- bigDataResponseData.setVitals(vitals);
|
|
|
- }
|
|
|
-
|
|
|
- //把所有的诊断拿出来经过过滤层过滤
|
|
|
- ClassifyDiag classifyDiag = new ClassifyDiag();
|
|
|
- List<FeatureRate> upfes = classifyDiag.filterDiag(graphResponseData, pushDiags);
|
|
|
- List<FeatureRate> classify = classifyDiag.diagClassify(upfes);
|
|
|
- List<FeatureRate> featureRates = classifyDiag.sortDiag(classify);
|
|
|
- bigDataResponseData.setDis(featureRates);
|
|
|
- //返回结果化验、辅检、体征、进行性别年龄过滤
|
|
|
- ResultDataProxy resultDataProxy = new ResultDataProxy();
|
|
|
- resultDataProxy.resultSexAgeFilter(request, bigDataResponseData, searchData);
|
|
|
- response.setData(bigDataResponseData);
|
|
|
+// AlgorithmCore core = new AlgorithmCore();
|
|
|
+// ResponseData bigDataResponseData = core.algorithm(request, searchData, responseData);
|
|
|
+//
|
|
|
+// GraphCalculate graphCalculate = new GraphCalculate();
|
|
|
+// ResponseData graphResponseData = graphCalculate.calculate(request, searchData);
|
|
|
+// if (graphResponseData.getDis().size() > 0) {
|
|
|
+// List<FeatureRate> disFeatureRates = new ArrayList<>();
|
|
|
+// List<FeatureRate> bigdis = bigDataResponseData.getDis();
|
|
|
+// List<FeatureRate> graphdis = graphResponseData.getDis();
|
|
|
+// for (FeatureRate bg:graphdis) {
|
|
|
+// Iterator<FeatureRate> iterator = bigdis.iterator();
|
|
|
+// while (iterator.hasNext()){
|
|
|
+// FeatureRate gd = iterator.next();
|
|
|
+// if(gd.getFeatureName().equals(bg.getFeatureName()) &&(bg.getDesc().contains("确诊")|| bg.getDesc().contains("拟诊"))){
|
|
|
+// iterator.remove();
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// disFeatureRates = bigdis;
|
|
|
+// List<FeatureRate> graphFeatureRates = graphResponseData.getDis();
|
|
|
+// graphFeatureRates.addAll(disFeatureRates);
|
|
|
+// bigDataResponseData.setDis(graphFeatureRates);
|
|
|
+// }
|
|
|
+// //归一之前诊断信息
|
|
|
+// bigDataResponseData.setBeforeCombineDis(bigDataResponseData.getDis());
|
|
|
+// //推送出的诊断信息作为参数传入知识图谱
|
|
|
+// List<FeatureRate> pushDiags = new ArrayList<>();
|
|
|
+// pushDiags.addAll(bigDataResponseData.getDis());
|
|
|
+// searchData.setPushDiags(pushDiags);
|
|
|
+// bigDataResponseData.setTreat(graphResponseData.getTreat());
|
|
|
+//
|
|
|
+// //量表和指标推送
|
|
|
+// Map<String, List<CrisisDetail>> crisisDetails = responseData.getCrisisDetails();
|
|
|
+// List<MedicalIndication> crisisDetailsList = this.getCrisisDetails(crisisDetails);
|
|
|
+// List<MedicalIndication> medicalIndications = graphResponseData.getMedicalIndications();
|
|
|
+// if (medicalIndications == null) {
|
|
|
+// medicalIndications = new ArrayList<>();
|
|
|
+// }
|
|
|
+// medicalIndications.addAll(crisisDetailsList);
|
|
|
+// if (medicalIndications != null && medicalIndications.size() > 0) {
|
|
|
+// logger.info("指标推送!!!!!!!!!");
|
|
|
+// // bigDataResponseData.getMedicalIndications().addAll(medicalIndications);
|
|
|
+// bigDataResponseData.setMedicalIndications(medicalIndications);
|
|
|
+// }
|
|
|
+//
|
|
|
+// //推送管理评估
|
|
|
+// bigDataResponseData.setManagementEvaluation(graphResponseData.getManagementEvaluation());
|
|
|
+//
|
|
|
+// //知识图谱直接替换大数据中的检验检查数据
|
|
|
+// Map<String, List<FeatureRate>> lisPacs = graphCalculate.getLisPacs(request, searchData);
|
|
|
+// bigDataResponseData.setLabs(lisPacs.get("lisList"));
|
|
|
+// bigDataResponseData.setPacs(lisPacs.get("pacsList"));
|
|
|
+// //体征结果和指标推送
|
|
|
+// Map<String, String> vitalCache = CacheUtil.getVitalCache();
|
|
|
+// List<String> featureList = Arrays.asList(searchData.getFeatureTypes());
|
|
|
+// List<FeatureRate> vitals = lisPacs.get("vitalResultList");
|
|
|
+// if (featureList.contains(Constants.feature_type_vital_index) && this.getVital(vitalCache, vitals).size() > 0) {
|
|
|
+// bigDataResponseData.setVitals(this.getVital(vitalCache, vitals));
|
|
|
+//
|
|
|
+// }
|
|
|
+// if (featureList.contains(Constants.feature_type_vital) && vitals.size() > 0) {
|
|
|
+// bigDataResponseData.setVitals(vitals);
|
|
|
+// }
|
|
|
+//
|
|
|
+// //把所有的诊断拿出来经过过滤层过滤
|
|
|
+// ClassifyDiag classifyDiag = new ClassifyDiag();
|
|
|
+// List<FeatureRate> upfes = classifyDiag.filterDiag(graphResponseData, pushDiags);
|
|
|
+// List<FeatureRate> classify = classifyDiag.diagClassify(upfes);
|
|
|
+// List<FeatureRate> featureRates = classifyDiag.sortDiag(classify);
|
|
|
+// bigDataResponseData.setDis(featureRates);
|
|
|
+// //返回结果化验、辅检、体征、进行性别年龄过滤
|
|
|
+// ResultDataProxy resultDataProxy = new ResultDataProxy();
|
|
|
+// resultDataProxy.resultSexAgeFilter(request, bigDataResponseData, searchData);
|
|
|
+// response.setData(bigDataResponseData);
|
|
|
return response;
|
|
|
}
|
|
|
|