Browse Source

推送规则

zhoutg 4 years ago
parent
commit
c83b7f2424

+ 1 - 1
src/main/java/com/diagbot/dto/BaseDiagnoseDTO.java

@@ -29,7 +29,7 @@ public class BaseDiagnoseDTO {
     /**
      * 术语类型
      */
-    private String libNype;
+    private String libType;
 
     /**
      * 提示概念id

+ 19 - 0
src/main/java/com/diagbot/dto/PushDiagnoseDTO.java

@@ -0,0 +1,19 @@
+package com.diagbot.dto;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @description:
+ * @author: zhoutg
+ * @time: 2021/3/16 15:17
+ */
+@Data
+public class PushDiagnoseDTO {
+
+    private List<DiagnoseDTO> protocolList = new ArrayList<>(); // 拟诊
+    private List<DiagnoseDTO> definiteList = new ArrayList<>(); // 确诊
+    private List<DiagnoseDTO> vigilantList = new ArrayList<>(); // 警惕
+}

+ 1 - 1
src/main/java/com/diagbot/facade/IndicationFacade.java

@@ -54,7 +54,7 @@ public class IndicationFacade {
 
 
     /**
-     * 病情提示总入口
+     * 提示总入口
      *
      * @param
      * @return

+ 1 - 1
src/main/java/com/diagbot/facade/PushFacade.java

@@ -72,7 +72,7 @@ public class PushFacade {
 
 
     /**
-     * 推送业务
+     * 推送业务6.0
      *
      * @param
      * @return

+ 23 - 0
src/main/java/com/diagbot/process/PushProcess.java

@@ -7,6 +7,7 @@ import com.diagbot.client.IcssPushServiceClient;
 import com.diagbot.dto.NeoPushDTO;
 import com.diagbot.dto.PushBaseDTO;
 import com.diagbot.dto.PushDTO;
+import com.diagbot.dto.PushDiagnoseDTO;
 import com.diagbot.dto.TreatDTO;
 import com.diagbot.dto.WordCrfDTO;
 import com.diagbot.dto.icss.FeatureRate;
@@ -315,6 +316,14 @@ public class PushProcess {
         return icssVo;
     }
 
+    /**
+     * 6.0推送业务
+     *
+     * @param pushVo
+     * @param standConvertMap
+     * @param wordCrfDTO
+     * @return
+     */
     public PushDTO process(PushVO pushVo, Map<String, Map<String, String>> standConvertMap, WordCrfDTO wordCrfDTO) {
         int length = pushVo.getLength();
         PushDTO pushDTO = new PushDTO();
@@ -345,6 +354,20 @@ public class PushProcess {
 
     }
 
+    /**
+     * 根据诊断依据推送疾病
+     * @param wordCrfDTO
+     */
+    public PushDiagnoseDTO pushDiagnose(WordCrfDTO wordCrfDTO) {
+        PushDiagnoseDTO pushDiagnoseDTO = new PushDiagnoseDTO();
+        // TODO 读取所有的诊断依据规则
+
+        // TODO 规则匹配
+
+        // TODO 返回诊断
+        return pushDiagnoseDTO;
+    }
+
     private void setPushVo(NeoPushVO pushVO, List<String> push) {
         String firstDisease = push.get(0);
         List<Diag> diags = new ArrayList<>();

+ 9 - 0
src/main/java/com/diagbot/web/CacheController.java

@@ -48,6 +48,15 @@ public class CacheController {
         return RespDTO.onSuc(true);
     }
 
+    @ApiOperation(value = "重新加载诊断依据[by:zhoutg]",
+            notes = "")
+    @PostMapping("/reloadDiagnose")
+    @SysLogger("reloadDiagnose")
+    public RespDTO<Boolean> reloadDiagnose() {
+        cacheFacade.loadAllBaseDiagnoseCache();
+        return RespDTO.onSuc(true);
+    }
+
     @ApiOperation(value = "重新加载药物缓存[by:zhoutg]",
             notes = "")
     @PostMapping("/clearDrug")