소스 검색

Merge branch 'master' of E:\qc with conflicts.

rengb 5 년 전
부모
커밋
b8e8e137c3

+ 14 - 13
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/process/EntityProcess.java

@@ -9,7 +9,6 @@ import com.lantone.qc.kernel.util.CatalogueUtil;
 import com.lantone.qc.kernel.structure.ai.model.Relation;
 import com.lantone.qc.kernel.util.KernelConstants;
 import com.lantone.qc.kernel.util.RedisUtil;
-import com.lantone.qc.kernel.util.SpringContextUtil;
 import com.lantone.qc.pub.model.entity.Diag;
 import com.lantone.qc.pub.model.entity.DiagInfectious;
 import com.lantone.qc.pub.model.entity.Negative;
@@ -31,7 +30,10 @@ import java.util.regex.Pattern;
  * @Author: HUJING
  * @Date: 2020/2/2 10:07
  */
+@Component
 public class EntityProcess {
+    @Autowired
+    RedisUtil redisUtil;
     /**
      * 树形结构存储三元组关系,返回传入实体类型为节点的所有关联实体对象
      * @param aiOut
@@ -221,18 +223,17 @@ public class EntityProcess {
         return null;
     }
 
-    /**
-     * 疾病名称需要映射操作
-     * @param lemma
-     * @param diag
-     */
-    protected void setDiag(Lemma lemma, Diag diag) {
-        RedisUtil redisUtil = SpringContextUtil.getBean("redisUtil");
-        Map<String, String> diagRedisMap = (Map<String, String>)redisUtil.get(KernelConstants.CONCEPT_DIAG_HOSPITAL_REFLECT);
-        diag.setHospitalDiagName(lemma.getText());
-        diag.setName(lemma.getText());//存放医院原始疾病名称
-        diag.setName(diagRedisMap.get(lemma.getText()) == null ? "" : diagRedisMap.get(lemma.getText()));//映射到我们的标准疾病名称
-    }
+//    /**
+//     * 疾病名称需要映射操作
+//     * @param lemma
+//     * @param diag
+//     */
+//    protected void setDiag(Lemma lemma, Diag diag) {
+//        Map<String, String> diagRedisMap = (Map<String, String>)redisUtil.get(KernelConstants.CONCEPT_DIAG_HOSPITAL_REFLECT);
+//        diag.setHospitalDiagName(lemma.getText());
+//        diag.setName(lemma.getText());//存放医院原始疾病名称
+//        diag.setName(diagRedisMap.get(lemma.getText()) == null ? "" : diagRedisMap.get(lemma.getText()));//映射到我们的标准疾病名称
+//    }
 
     /**
      * 查找时间

+ 2 - 1
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/process/EntityProcessDiag.java

@@ -22,7 +22,8 @@ public class EntityProcessDiag extends EntityProcess {
             List<Lemma> diagLemmas = createEntityTree(aiOut, EntityEnum.DIEASE.toString());
             for (Lemma lemma : diagLemmas) {
                 Diag diag = new Diag();
-                super.setDiag(lemma, diag);
+                diag.setHospitalDiagName(lemma.getText());
+//                super.setDiag(lemma, diag);
                 if (lemma.isHaveChildren()) {
                     diag.setNegative(findNegative(lemma));//阴性
                     diag.setPossible(findT(lemma, new Possible(), EntityEnum.POSSIBLE.toString()));//可能的

+ 0 - 1
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/process/EntityProcessPast.java

@@ -38,7 +38,6 @@ public class EntityProcessPast extends EntityProcess {
             for (Lemma lemma : diagLemmas) {
                 Diag diag = DiagEnhancer.create();
                 diag.setHospitalDiagName(lemma.getText());
-                diag.setName(lemma.getText());
 //                super.setDiag(lemma, diag);
                 if (lemma.isHaveChildren()) {
                     //阴性

+ 5 - 1
kernel/src/main/java/com/lantone/qc/kernel/util/DiagMethodInterceptor.java

@@ -1,5 +1,6 @@
 package com.lantone.qc.kernel.util;
 
+import com.lantone.qc.pub.model.entity.Diag;
 import net.sf.cglib.proxy.MethodInterceptor;
 import net.sf.cglib.proxy.MethodProxy;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -20,9 +21,12 @@ public class DiagMethodInterceptor implements MethodInterceptor {
     @Override
     public Object intercept(Object obj, Method method, Object[] args, MethodProxy proxy) throws Throwable {
         if (method.getName().equals("setName")) {
-            Map<String, String> diagRedisMap = (Map<String, String>)redisUtil.get(KernelConstants.CONCEPT_DIAG_HOSPITAL_REFLECT);
+            Map<String, String> diagRedisMap = (Map<String, String>) redisUtil.get(KernelConstants.CONCEPT_DIAG_HOSPITAL_REFLECT);
             String hospitalDiagName = args[0].toString();
             args[0] = diagRedisMap.get(hospitalDiagName) == null ? "" : diagRedisMap.get(hospitalDiagName);
+        } else if (method.getName().equals("setHospitalDiagName")) {
+            Diag diag = (Diag) obj;
+            diag.setName(args[0].toString());
         }
         Object object = proxy.invokeSuper(obj, args);
         return object;