Quellcode durchsuchen

病程信息如无下级结构就删除

zhoutg vor 5 Jahren
Ursprung
Commit
fdec1fe3ea
1 geänderte Dateien mit 8 neuen und 10 gelöschten Zeilen
  1. 8 10
      src/main/java/com/diagbot/facade/QcModeFacade.java

+ 8 - 10
src/main/java/com/diagbot/facade/QcModeFacade.java

@@ -7,9 +7,9 @@ import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.service.impl.QcModeServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
 import org.springframework.stereotype.Component;
 
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -27,23 +27,21 @@ public class QcModeFacade extends QcModeServiceImpl {
                 .orderByAsc("parent_id", "order_no")
         );
 
-        Iterator<QcMode> iterator = qcModeList.iterator();
-        while (iterator.hasNext()) {
-            QcMode qcMode = iterator.next();
-            if (!pageData.containsKey(qcMode.getName()) && !"病程信息".equals(qcMode.getName())) {
-                iterator.remove();
-            }
-        }
-
         Map<Long, List<QcMode>> map = EntityUtil.makeEntityListMap(qcModeList, "parentId");
+
         // 获取根节点
         List<QcMode> root = map.get(-1L);
         List<QcModeDTO> res = BeanUtil.listCopyTo(root, QcModeDTO.class);
 
-        for (QcModeDTO qcModeDTO : res) {
+        for (int i = 0; i < res.size(); i++) {
+            QcModeDTO qcModeDTO = res.get(i);
             if (map.containsKey(qcModeDTO.getId())) {
                 qcModeDTO.setSonMode(BeanUtil.listCopyTo(map.get(qcModeDTO.getId()), QcModeDTO.class));
             }
+            // 如果病程信息下无内容,则删除
+            if ("病程信息".equals(qcModeDTO.getName()) && ListUtil.isEmpty(qcModeDTO.getSonMode())) {
+                res.remove(i--);
+            }
         }
         return res;
     }