|
@@ -1,13 +1,12 @@
|
|
|
package org.diagbot.push.controller;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.diagbot.bigdata.work.AlgorithmCore;
|
|
|
import org.diagbot.bigdata.work.PretreatmentFilter;
|
|
|
-import org.diagbot.common.javabean.Drugs;
|
|
|
-import org.diagbot.common.javabean.Filnlly;
|
|
|
-import org.diagbot.common.javabean.MedicalIndication;
|
|
|
-import org.diagbot.common.javabean.Medicition;
|
|
|
+import org.diagbot.common.javabean.*;
|
|
|
import org.diagbot.common.push.filter.ClassifyDiag;
|
|
|
+import org.diagbot.common.work.CrisisDetail;
|
|
|
import org.diagbot.common.work.FeatureRate;
|
|
|
import org.diagbot.common.work.ResponseData;
|
|
|
import org.diagbot.common.work.SearchData;
|
|
@@ -161,11 +160,16 @@ public class AlgorithmController extends BaseController {
|
|
|
searchData.setPushDiags(pushDiags);
|
|
|
bigDataResponseData.setTreat(graphResponseData.getTreat());
|
|
|
//量表和指标推送
|
|
|
+ List<CrisisDetail> crisisDetails = responseData.getCrisisDetails();
|
|
|
+ List<MedicalIndication> crisisDetailsList = this.getCrisisDetails(crisisDetails);
|
|
|
List<MedicalIndication> medicalIndications = graphResponseData.getMedicalIndications();
|
|
|
+ medicalIndications.addAll(crisisDetailsList);
|
|
|
if (medicalIndications != null && medicalIndications.size() > 0) {
|
|
|
logger.info("指标推送!!!!!!!!!");
|
|
|
- bigDataResponseData.getMedicalIndications().addAll(medicalIndications);
|
|
|
+// bigDataResponseData.getMedicalIndications().addAll(medicalIndications);
|
|
|
+ bigDataResponseData.setMedicalIndications(medicalIndications);
|
|
|
}
|
|
|
+
|
|
|
//推送管理评估
|
|
|
bigDataResponseData.setManagementEvaluation(graphResponseData.getManagementEvaluation());
|
|
|
//知识图谱直接替换大数据中的检验检查数据
|
|
@@ -197,6 +201,37 @@ public class AlgorithmController extends BaseController {
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 包装输出的危急值
|
|
|
+ * @param crisisDetails
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public List<MedicalIndication> getCrisisDetails(List<CrisisDetail> crisisDetails){
|
|
|
+ List<MedicalIndication> crisisDetailList = new ArrayList<>();
|
|
|
+ if(crisisDetails.size()>0){
|
|
|
+ for (CrisisDetail crisisDetail:crisisDetails) {
|
|
|
+ String originText = crisisDetail.getOriginText();//文本输入的数据
|
|
|
+ String remindText = crisisDetail.getRemindText();//危机警示指标
|
|
|
+ String standardText = crisisDetail.getStandardText();//评判标准
|
|
|
+ if(StringUtils.isNotEmpty(remindText)){
|
|
|
+ MedicalIndication medicalIndication = new MedicalIndication();
|
|
|
+ List<MedicalIndicationDetail> crisisMid = new ArrayList<>();
|
|
|
+ MedicalIndicationDetail medicalIndicationDetail = new MedicalIndicationDetail();
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ jsonObject.put("controlType",2);
|
|
|
+ jsonObject.put("name",standardText);
|
|
|
+ medicalIndicationDetail.setType(4);
|
|
|
+ medicalIndicationDetail.setContent(jsonObject);
|
|
|
+ crisisMid.add(medicalIndicationDetail);
|
|
|
+ medicalIndication.setName(remindText);
|
|
|
+ medicalIndication.setDetails(crisisMid);
|
|
|
+ crisisDetailList.add(medicalIndication);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return crisisDetailList;
|
|
|
+ }
|
|
|
+
|
|
|
public List<FeatureRate> getVital(Map<String, String> vitalCache,List<FeatureRate> vitals){
|
|
|
Set<String> vitalSet = new LinkedHashSet<>();
|
|
|
List<FeatureRate> vitalList = new ArrayList<>();
|