Browse Source

挂号科室添加三级目录。

lighter 4 years ago
parent
commit
fbaf0a8521

+ 1 - 1
pom.xml

@@ -10,7 +10,7 @@
     </parent>
     <groupId>thyyxxk</groupId>
     <artifactId>wxservice-server</artifactId>
-    <version>5.3</version>
+    <version>5.4</version>
     <name>wxservice-server</name>
     <description>server for wxservice-web</description>
 

+ 3 - 0
src/main/java/thyyxxk/wxservice_server/entity/appointment/MzDept.java

@@ -2,6 +2,8 @@ package thyyxxk.wxservice_server.entity.appointment;
 
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @author dj
  */
@@ -9,4 +11,5 @@ import lombok.Data;
 public class MzDept {
     private String id;
     private String text;
+    private List<MzDept> children;
 }

+ 1 - 1
src/main/java/thyyxxk/wxservice_server/entity/hrgresponse/MzClassResponse.java

@@ -11,5 +11,5 @@ import java.util.Map;
 @Data
 public class MzClassResponse {
     private Integer resultCode;
-    private List<Map<String, String>> data;
+    private List<Map<String, Object>> data;
 }

+ 17 - 6
src/main/java/thyyxxk/wxservice_server/service/AppointmentService.java

@@ -61,18 +61,29 @@ public class AppointmentService {
         }
         mzClasses = new ArrayList<>();
         JSONObject param = new JSONObject();
-        for (Map<String, String> item : response.getData()) {
+        for (Map<String, Object> item : response.getData()) {
             MzClass pojo = new MzClass();
-            pojo.setId(item.get("code"));
-            pojo.setText(item.get("name"));
+            pojo.setId(item.get("code").toString());
+            pojo.setText(item.get("name").toString());
             param.put("mzClass", pojo.getId());
             MzClassResponse response2 = template.postForObject(hrgApiUrl + "/getUnitCodeByMzClass", param, MzClassResponse.class);
             if (null != response2 && response2.getResultCode() == 0) {
                 List<MzDept> children = new ArrayList<>();
-                for (Map<String, String> child : response2.getData()) {
+                for (Map<String, Object> child : response2.getData()) {
                     MzDept dept = new MzDept();
-                    dept.setId(child.get("code"));
-                    dept.setText(child.get("name"));
+                    dept.setId(child.get("code").toString());
+                    dept.setText(child.get("name").toString());
+                    List<Map<String, Object>> grandChildrenMap = CastUtil.cast(child.get("children"));
+                    if (null != grandChildrenMap && grandChildrenMap.size() > 0) {
+                        List<MzDept> grandChildren = new ArrayList<>();
+                        for (Map<String, Object> temp : grandChildrenMap) {
+                            MzDept mzDept = new MzDept();
+                            mzDept.setId(temp.get("code").toString());
+                            mzDept.setText(temp.get("name").toString());
+                            grandChildren.add(mzDept);
+                        }
+                        dept.setChildren(grandChildren);
+                    }
                     children.add(dept);
                 }
                 pojo.setChildren(children);