Selaa lähdekoodia

1、增加症状需要部位描述缓存信息
2、数据库词库信息暂时使用非加密

louhr 5 vuotta sitten
vanhempi
commit
6b24c8f4f3

+ 28 - 4
kernel/src/main/java/com/lantone/qc/kernel/util/CacheFileManager.java

@@ -89,10 +89,12 @@ public class CacheFileManager {
                 r4 = rs.getString(7);
                 r5 = rs.getString(8);
 
-                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+//                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                r1 = r1==null?"":r1;
                 r2 = r2==null?"0":r2;
                 r3 = r3==null?"0":r3;
-                r4 = CryptUtil.decrypt_char(r4==null?"":r4);
+//                r4 = CryptUtil.decrypt_char(r4==null?"":r4);
+                r4 = r4==null?"":r4;
                 r5 = map.get(r5) == null ? "" : map.get(r5);
 
                 fw.write(encrypDES.encrytor(r1 + "|" + r2 + "|" + r3 + "|" + r4 + "|" + r5));
@@ -100,13 +102,34 @@ public class CacheFileManager {
             }
             fw.close();
 
+            //需要部位的症状信息
+            sql = "select l_1.name l_1_name \n" +
+                    "from kl_library_info l_1\n" +
+                    "left join kl_library_info l_2 on l_1.concept_id = l_2.concept_id and l_2.is_concept = 1\n" +
+                    "left join kl_concept kc on l_1.concept_id = kc.id\n" +
+                    "left join kl_clinic cli on l_1.concept_id = cli.concept_id\n" +
+                    "where kc.is_deleted = 'N' and l_1.type_id = 1 and cli.has_bodypart = '1' group by l_1.concept_id";
+
+            fw = new FileWriter(path + "concept_clinic_bodypart_properties.dict");
+            rs = st.executeQuery(sql);
+            while (rs.next()) {
+                r1 = rs.getString(1);
+//                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                r1 = r1==null?"":r1;
+
+                fw.write(encrypDES.encrytor(r1));
+                fw.write("\n");
+            }
+            fw.close();
+
             //性质词典
             sql = "select name from kl_library_info where type_id = 4";
             fw = new FileWriter(path + "concept_prop.dict");
             rs = st.executeQuery(sql);
             while (rs.next()) {
                 r1 = rs.getString(1);
-                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                r1 = r1==null?"":r1;
+//                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
                 fw.write(encrypDES.encrytor(r1));
                 fw.write("\n");
             }
@@ -118,7 +141,8 @@ public class CacheFileManager {
             rs = st.executeQuery(sql);
             while (rs.next()) {
                 r1 = rs.getString(1);
-                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                r1 = r1==null?"":r1;
+//                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
                 fw.write(encrypDES.encrytor(r1));
                 fw.write("\n");
             }

+ 18 - 4
kernel/src/main/java/com/lantone/qc/kernel/util/CacheUtil.java

@@ -31,10 +31,11 @@ public class CacheUtil implements ApplicationRunner {
 
     public void run(ApplicationArguments var1) {
         try {
-            this.putConceptDiagPropertyMap();
-            this.putConceptPropMap();
-            this.putConceptDegreeMap();
-            this.putDiagHospitalReflect();
+            this.putConceptDiagPropertyMap();//疾病相关信息放入缓存 包括疾病是否是慢病、传染病、常见症状、同义词
+            this.putConceptPropMap();//性质词典
+            this.putConceptDegreeMap();//程度词典
+            this.putDiagHospitalReflect();//医院疾病名称映射,仅做测试用,由华卓完成和医院对接放入redis
+            this.putClinicBodyPartMap();//症状需要部位描述词典放入redis缓存
         } catch (Exception e) {
             logger.error("缓存文件读取错误。。。");
         }
@@ -97,6 +98,19 @@ public class CacheUtil implements ApplicationRunner {
         redisUtil.set(KernelConstants.CONCEPT_DEGREE_LIST, degreeList);
     }
 
+    /**
+     * 症状需要部位描述词典放入redis缓存
+     */
+    public void putClinicBodyPartMap() throws Exception {
+        Configuration configuration = new DefaultConfig();
+        List<String> lines = configuration.readTargetFileContents("cache/concept_clinic_bodypart_properties.dict");
+        List<String> clinicBodyPartList = new ArrayList<>();
+        for (String line : lines) {
+            clinicBodyPartList.add(line);
+        }
+        redisUtil.set(KernelConstants.CONCEPT_CLINIC_BODYPART_PROPERTIES_LIST, clinicBodyPartList);
+    }
+
     /**
      * 医院疾病名称映射,仅做测试用,由华卓完成和医院对接放入redis
      * @throws Exception

+ 2 - 0
kernel/src/main/java/com/lantone/qc/kernel/util/KernelConstants.java

@@ -13,6 +13,8 @@ public class KernelConstants {
     public static final String CONCEPT_PROPERTY_LIST = "concept_property_list";
     //程度词典
     public static final String CONCEPT_DEGREE_LIST = "concept_degree_list";
+    //部位需要症状信息
+    public static final String CONCEPT_CLINIC_BODYPART_PROPERTIES_LIST = "concept_clinic_bodypart_properties_list";
     //诊断名称映射
     public static final String CONCEPT_DIAG_HOSPITAL_REFLECT = "concept_diag_hospital_reflect";
 }

+ 0 - 1
kernel/src/main/resources/cache/concept_degree.dict

@@ -33,5 +33,4 @@ PtoheGlVmys=
 f7a1GfJz/oA=
 dc3CWhrdobs=
 9N9cQ/xIE3E=
-D4WtrB/XSAo=
 iRU7Kkhw1tc=

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 342 - 504
kernel/src/main/resources/cache/concept_diag_properties.dict