From ac4341ea6b66ae02427d39d35f41d42d78b2eb2e Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 14 二月 2025 10:08:32 +0800
Subject: [PATCH] #

---
 zy-asrs-flow/src/utils/tree-util.js |  101 ++++++++++----------------------------------------
 1 files changed, 21 insertions(+), 80 deletions(-)

diff --git a/zy-asrs-flow/src/utils/tree-util.js b/zy-asrs-flow/src/utils/tree-util.js
index 2af1e75..a64efff 100644
--- a/zy-asrs-flow/src/utils/tree-util.js
+++ b/zy-asrs-flow/src/utils/tree-util.js
@@ -1,86 +1,27 @@
-import { DataNode } from 'antd/es/tree';
-import { parse } from 'querystring';
 
-/**
- * 鏋勯�犳爲鍨嬬粨鏋勬暟鎹�
- * @param {*} data 鏁版嵁婧�
- * @param {*} id id瀛楁 榛樿 'id'
- * @param {*} parentId 鐖惰妭鐐瑰瓧娈� 榛樿 'parentId'
- * @param {*} children 瀛╁瓙鑺傜偣瀛楁 榛樿 'children'
- */
-export function buildTreeData(data, id, name, parentId, parentName, children) {
-  const config = {
-    id: id || 'id',
-    name: name || 'name',
-    parentId: parentId || 'parentId',
-    parentName: parentName || 'parentName',
-    childrenList: children || 'children',
-  };
-
-  const childrenListMap = [];
-  const nodeIds = [];
-  const tree = [];
-  data.forEach((item) => {
-    const d = item;
-    const pId = d[config.parentId];
-    if (!childrenListMap[pId]) {
-      childrenListMap[pId] = [];
-    }
-    d.key = d[config.id];
-    d.title = d[config.name];
-    d.value = d[config.id];
-    d[config.childrenList] = null;
-    nodeIds[d[config.id]] = d;
-    childrenListMap[pId].push(d);
-  });
-
-  data.forEach((item) => {
-    const d = item;
-    const pId = d[config.parentId];
-    if (!nodeIds[pId]) {
-      d[config.parentName] = '';
-      tree.push(d);
-    }
-  });
-
-  function adaptToChildrenList(item) {
-    const o = item;
-    if (childrenListMap[o[config.id]]) {
-      if (!o[config.childrenList]) {
-        o[config.childrenList] = [];
-      }
-      o[config.childrenList] = childrenListMap[o[config.id]];
-    }
-    if (o[config.childrenList]) {
-      o[config.childrenList].forEach((child) => {
-        const c = child;
-        c[config.parentName] = o[config.name];
-        adaptToChildrenList(c);
-      });
-    }
-  }
-
-  tree.forEach((t) => {
-    adaptToChildrenList(t);
-  });
-
-  return tree;
-}
-
-export const getPageQuery = () => parse(window.location.href.split('?')[1]);
-
-export function formatTreeData(arrayList) {
-  const treeSelectData = arrayList.map((item) => {
-    const node = {
-      id: item.id,
-      title: item.label,
-      key: `${item.id}`,
+export function transformTreeData(originalData) {
+  return originalData.map(item => {
+    let newItem = {
+      key: item.id,
+      title: item.name,
       value: item.id,
+      // 鍏跺畠闇�瑕佺殑灞炴��...
     };
-    if (item.children) {
-      node.children = formatTreeData(item.children);
+    if (item.children && item.children.length > 0) {
+      newItem.children = transformTreeData(item.children);
     }
-    return node;
+
+    return newItem;
   });
-  return treeSelectData;
 }
+
+export function getTreeAllKeys(data) {
+  let keys = [];
+  for (let item of data) {
+      keys.push(item.key);
+      if (item.children) {
+          keys = keys.concat(getTreeAllKeys(item.children));
+      }
+  }
+  return keys;
+}
\ No newline at end of file

--
Gitblit v1.9.1