Переглянути джерело

电子病历数据元维护

xiaochan 3 роки тому
батько
коміт
a4f4eef6e4

+ 14 - 7
src/main/java/thyyxxk/webserver/service/dictionary/EmrDataMaintenanceServer.java

@@ -29,18 +29,25 @@ public class EmrDataMaintenanceServer {
         return sqlSentence;
     }
 
-    private static void createObject(Map<String, Map<String, Object>> groupMap, String key, Object value, Map<String, Object> extraMap) {
+    private static void createObject(Map<String, List<Map<String, Object>>> groupMap,
+                                     String key, Object value,
+                                     Map<String, Object> extraMap) {
         String[] keys = key.split("_");
-        Map<String, Object> groupChild = new HashMap<>();
+        List<Map<String, Object>> groupChild = new ArrayList<>();
+        Map<String, Object> childMap = new HashMap<>();
+
         if (keys.length == 4) {
             extraMap.put(StringUtil.humpToUnderline(keys[3]), value);
         }
+
         if (groupMap.containsKey(keys[1])) {
-            groupChild.putAll(groupMap.get(keys[1]));
-            groupChild.put(keys[2], value);
-            groupMap.put(keys[1], groupChild);
+            childMap.putAll(groupMap.get(keys[1]).get(0));
+            childMap.put(keys[2], value);
+            groupChild.add(childMap);
+            groupMap.replace(keys[1], groupChild);
         } else {
-            groupChild.put(keys[2], value);
+            childMap.put(keys[2], value);
+            groupChild.add(childMap);
             groupMap.put(keys[1], groupChild);
         }
     }
@@ -61,7 +68,7 @@ public class EmrDataMaintenanceServer {
                 return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, "sql没问题,但是没得数据。");
             }
 
-            Map<String, Map<String, Object>> groupingMap = new HashMap<>();
+            Map<String, List<Map<String, Object>>> groupingMap = new HashMap<>();
             Map<String, Object> extraMap = new HashMap<>();
             List<String> groupKeys = new ArrayList<>();