Prechádzať zdrojové kódy

1、修改华卓导入接口,只导入数据完整的信息

louhr 5 rokov pred
rodič
commit
0baeee0be5

+ 8 - 11
kernel/src/test/java/com/lantone/qc/kernel/DataTest.java

@@ -7,6 +7,7 @@ import com.lantone.qc.pub.util.PropertiesUtil;
 
 import java.sql.*;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.Properties;
 
@@ -21,11 +22,11 @@ public class DataTest {
 
     }
 
-    public static JSONArray loadHomePage(String patientId) {
+    public static Map<String, String> loadHomePage(String patientId) {
         Connection conn = null;
         Statement stmt = null;
         ResultSet rs = null;
-        JSONArray js = null;
+        Map<String, String> js = null;
         try {
             PropertiesUtil propertiesUtil = new PropertiesUtil("kernel.properties");
             Class.forName(propertiesUtil.getProperty("oracle.test.driver"));
@@ -47,7 +48,7 @@ public class DataTest {
             DatabaseMetaData dmd = conn.getMetaData();
             ResultSet dmdRs = dmd.getColumns(null, null, "BR_RECHOME", null);
 
-            Map<String, String> colMap = new HashMap<>();
+            Map<String, String> colMap = new LinkedHashMap<>();
             while(dmdRs.next()){
                 colMap.put(dmdRs.getString(4), dmdRs.getString("REMARKS"));
             }
@@ -80,25 +81,21 @@ public class DataTest {
         return js;
     }
 
-    public static JSONArray resultSetToJson(ResultSet rs, Map<String, String> map) throws SQLException, JSONException {
-        // json数组
-        JSONArray array = new JSONArray();
+    public static Map<String, String> resultSetToJson(ResultSet rs, Map<String, String> map) throws SQLException, JSONException {
         // 获取列数
         ResultSetMetaData metaData = (ResultSetMetaData) rs.getMetaData();
         int columnCount = metaData.getColumnCount();
         // 遍历ResultSet中的每条数据
+        Map<String, String> result = new LinkedHashMap<>();
         while (rs.next()) {
-            JSONObject jsonObj = new JSONObject();
             // 遍历每一列
             for (int i = 1; i <= columnCount; i++) {
                 String columnName = metaData.getColumnLabel(i);
                 String value = rs.getString(columnName) == null ? "" : rs.getString(columnName);
-                jsonObj.put(map.get(columnName), value);
+                result.put(map.get(columnName), value);
             }
-            array.add(jsonObj);
         }
-
-        return array;
+        return result;
     }
 
 }

+ 4 - 9
kernel/src/test/java/com/lantone/qc/kernel/TaizDataImportApiTest.java

@@ -68,13 +68,10 @@ public class TaizDataImportApiTest {
         List<Map<String, Object>> list = new ArrayList<>();
 
         for (Map.Entry<String, String> entry : patientMap.entrySet()) {
-            if ("ZY010000656840".equals(entry.getKey())) {
-                System.out.println();
-            }
             List<PatientText> patientTexts = new ArrayList<>();
             //病人的病案首页内容
-            JSONArray firstPageJsonArray = DataTest.loadHomePage(entry.getKey());
-            if (firstPageJsonArray.isEmpty()) { //没病案首页直接不导入
+            Map<String, String> homePageMap = DataTest.loadHomePage(entry.getKey());
+            if (homePageMap == null || homePageMap.isEmpty()) { //没病案首页直接不导入
                 deletePatient.add(entry.getKey()); //没病案首页的患者也要删除
                 continue;
             }
@@ -83,11 +80,9 @@ public class TaizDataImportApiTest {
             firstPageTextMap.put("case_number_id", patientMap.get(entry.getKey()));
             firstPageTextMap.put("hospital_id", hospitalId);
             firstPageTextMap.put("mode_id", 6);
-            firstPageTextMap.put("origin_text", firstPageJsonArray.toString());
-            JSONObject jsonObject = firstPageJsonArray.getJSONObject(0);
-            Map<String, Object> innerMap = jsonObject.getInnerMap();
+            firstPageTextMap.put("origin_text", FastJsonUtils.getBeanToJson(homePageMap));
             String pagetext = "";
-            for (Map.Entry<String, Object> e : innerMap.entrySet()) {
+            for (Map.Entry<String, String> e : homePageMap.entrySet()) {
                 pagetext = pagetext + "【" + e.getKey() + "】:" + e.getValue().toString() + "\n";
             }
             firstPageTextMap.put("text", pagetext);