Browse Source

字段标准化修改准备工作-北仑入台州

rengb 4 years ago
parent
commit
e377485148

+ 2 - 1
dbanaly/pom.xml

@@ -127,7 +127,8 @@
             <resource>
                 <directory>src/main/resources</directory>
                 <includes>
-                    <include>*.yml</include>
+                    <include>**/*.yml</include>
+                    <include>**/*.xml</include>
                 </includes>
             </resource>
         </resources>

+ 12 - 0
dbanaly/src/main/java/com/lantone/qc/dbanaly/facade/comsis/ModuleHelper.java

@@ -53,16 +53,20 @@ public class ModuleHelper {
     public boolean loadModuleInfo() {
         try {
             List<String> xmlDataTypeHospitalIds = Lists.newArrayList("1", "2", "3");
+            List<String> htmlDataTypeHospitalIds = Lists.newArrayList("4");
             for (String hospitalId : hospitalIds.split(",")) {
                 loadStandardModule(hospitalId);
                 if (xmlDataTypeHospitalIds.contains(hospitalId)) {
                     loadModuleInfoByHospitalId(hospitalId);
+                } else if (htmlDataTypeHospitalIds.contains(hospitalId)) {
+                    loadHtmlModuleInfoByHospitalId(hospitalId);
                 }
             }
             return true;
         } catch (Exception e) {
             log.error(e.getMessage(), e);
             ModuleMappingUtil.xmlDataTypeModuleInfo.clear();
+            ModuleMappingUtil.htmlDataTypeModuleInfo.clear();
             return false;
         }
     }
@@ -113,6 +117,14 @@ public class ModuleHelper {
         ModuleMappingUtil.xmlDataTypeModuleInfo.put(hospitalId, result);
     }
 
+    private void loadHtmlModuleInfoByHospitalId(String hospitalId) {
+        List<String> list = moduleInfoService.getBaseMapper().getAnameModidMap(Long.parseLong(hospitalId));
+        list.forEach(i -> {
+            String[] arry = i.split("=");
+            ModuleMappingUtil.htmlDataTypeModuleInfo.put(arry[0], arry[1]);
+        });
+    }
+
     private void loadStandardModule(String hospitalId) {
         QueryWrapper<ModuleInfo> moduleInfoQe = new QueryWrapper<>();
         moduleInfoQe.eq("is_deleted", "N");

+ 5 - 1
dbanaly/src/main/java/com/lantone/qc/dbanaly/lt/mapper/ModuleInfoMapper.java

@@ -1,7 +1,9 @@
 package com.lantone.qc.dbanaly.lt.mapper;
 
-import com.lantone.qc.dbanaly.lt.entity.ModuleInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.qc.dbanaly.lt.entity.ModuleInfo;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +15,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface ModuleInfoMapper extends BaseMapper<ModuleInfo> {
 
+    List<String> getAnameModidMap(Long hospitalId);
+
 }

+ 5 - 0
dbanaly/src/main/java/com/lantone/qc/dbanaly/util/SpecialStorageUtil.java

@@ -1,6 +1,7 @@
 package com.lantone.qc.dbanaly.util;
 
 import com.google.common.collect.Maps;
+import com.lantone.qc.pub.model.vo.BehospitalInfoVO;
 import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
@@ -15,6 +16,7 @@ import java.util.Map;
 public final class SpecialStorageUtil {
     private final Map<String, Map<String, Object>> hospitalCache = Maps.newHashMap();
     private final ThreadLocal<String> hospitalIdThreadLocal = new ThreadLocal<>();
+    private final ThreadLocal<BehospitalInfoVO> behospitalInfoThreadLocal = new ThreadLocal<>();
 
     public <T> T getJsonStringValue(String key) {
         return getValByHospitalId(hospitalIdThreadLocal.get(), key);
@@ -54,4 +56,7 @@ public final class SpecialStorageUtil {
         return hospitalCache;
     }
 
+    public ThreadLocal<BehospitalInfoVO> getBehospitalInfoThreadLocal() {
+        return behospitalInfoThreadLocal;
+    }
 }

+ 11 - 0
dbanaly/src/main/resources/mapper/lt/ModuleInfoMapper.xml

@@ -2,4 +2,15 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.lantone.qc.dbanaly.lt.mapper.ModuleInfoMapper">
 
+    <select id="getAnameModidMap" parameterType="long" resultType="string">
+        SELECT
+        concat(IFNULL(c.map_type,''),'=',a.id)
+        from qc_module_info a join med_module_mapping b on a.id=b.module_id
+        join med_record_analyze c on b.record_id=c.id
+        where a.hospital_id=#{hospitalId} and a.is_deleted='N'
+        and b.hospital_id=#{hospitalId} and b.is_deleted='N'
+        and c.hospital_id=#{hospitalId} and c.is_deleted='N'
+        and c.map_type!='-1' and a.default_module=0
+    </select>
+
 </mapper>

+ 6 - 0
public/pom.xml

@@ -34,6 +34,12 @@
             <artifactId>dom4j</artifactId>
             <version>1.6.1</version>
         </dependency>
+        <!-- jsoup HTML parser library @ https://jsoup.org/ -->
+        <dependency>
+            <groupId>org.jsoup</groupId>
+            <artifactId>jsoup</artifactId>
+            <version>1.12.1</version>
+        </dependency>
         <dependency>
             <groupId>jaxen</groupId>
             <artifactId>jaxen</artifactId>

+ 21 - 0
public/src/main/java/com/lantone/qc/pub/model/vo/EzAnalysisVO.java

@@ -0,0 +1,21 @@
+package com.lantone.qc.pub.model.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2020/9/24 9:47
+ */
+@Getter
+@Setter
+public class EzAnalysisVO {
+
+    private String deptName;
+
+    private String modelName;
+
+    private String xml;
+
+}

+ 24 - 0
public/src/main/java/com/lantone/qc/pub/res/EzAnalysisDTO.java

@@ -0,0 +1,24 @@
+package com.lantone.qc.pub.res;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2020/9/24 9:49
+ */
+@Getter
+@Setter
+public class EzAnalysisDTO {
+
+    private String code;
+
+    private String modelName;
+
+    private String modelValue;
+
+}

+ 1 - 1
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunHtmlAnalysis.java

@@ -9,6 +9,6 @@ import java.util.Map;
  */
 public interface BeiLunHtmlAnalysis {
 
-    Map<String,String> analysis(String... args);
+    Map<String,String> analysis(String...args);
 
 }