From 5426194b8651c9b2e13669940535e32e563964e5 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期日, 07 四月 2024 17:34:41 +0800
Subject: [PATCH] 路由代码上传

---
 Source/ProjectWeb/src/router/avue-router.js |   15 +++++++--------
 Source/ProjectWeb/src/store/modules/user.js |   37 ++++++++++++++++---------------------
 2 files changed, 23 insertions(+), 29 deletions(-)

diff --git a/Source/ProjectWeb/src/router/avue-router.js b/Source/ProjectWeb/src/router/avue-router.js
index 933f2a5..9d2fc30 100644
--- a/Source/ProjectWeb/src/router/avue-router.js
+++ b/Source/ProjectWeb/src/router/avue-router.js
@@ -97,8 +97,9 @@
       // 璁剧疆 props榛樿鍊� 浣滅敤灏辨槸灏嗗瓧娈佃缃垚閰嶇疆鐨�
       const propsDefault = {
         label: propsConfig.label || 'name',
-        path: 'code',
-        pathValue:propsConfig.path || 'path',
+        path:'code',
+        code: 'code',
+        pathValue:'pathValue',
         icon: propsConfig.icon || 'icon',
         children: propsConfig.children || 'children',
         meta: propsConfig.meta || 'meta',
@@ -119,17 +120,15 @@
           }
         })();
         let code = (() => {
-            return oMenu[propsDefault.path]
+          return oMenu[propsDefault.code]
         })();
         // 灏嗗瓧绗︿覆鍒嗗壊鎴愭暟缁勶紝浠�'?'浣滀负鍒嗛殧绗�
         let parts = path.split("?");
         // 濡傛灉鏁扮粍鐨勯暱搴﹀ぇ浜�1锛岃〃绀烘湁'?'锛屽垯鍙栫涓�涓厓绱犵殑绗竴涓儴鍒嗭紝鍚﹀垯鐩存帴鍙栨暣涓瓧绗︿覆
         let bsValue = parts.length > 1 ? parts[0].split("=")[1] : path.split("=")[1];
-
-        if (bsValue ===''  || bsValue === undefined || bsValue === null ) {
+        if (bsValue === '' || bsValue === undefined || bsValue === null) {
           bsValue = "UI";
         }
-
         //鐗规畩澶勭悊缁勪欢 鎵ц瀹岃繖涓� component 涔熷氨鏄簿纭埌鍏蜂綋鐨勬枃浠朵簡  views鏂囦欢澶逛笅闈㈠氨鏄叿浣撶殑椤甸潰浠g爜
         let component = bsValue === 'UI' ? 'views/base/UIContentViewer' : `views/custom-ui/${bsValue}`,
           name = oMenu[propsDefault.label],
@@ -147,7 +146,7 @@
         //鏄惁鏈夊瓙璺敱
         const isChild = children.length !== 0;
         const oRouter = {
-          path: code,
+          path: '/' + code,
           component(resolve) {
             // 鍒ゆ柇鏄惁涓洪璺敱
             if (first) {
@@ -175,7 +174,7 @@
           children: !isChild ? (() => {
             if (first) {
               // 杩欓噷鐨刬sURL鍒ゆ柇锛屽洜涓鸿繖涓綉绔欐湁浣跨敤 iframe銆傛墍浠ラ渶瑕佸垽鏂槸鍚︿负缃戦〉閾炬帴
-              if (!isURL(path)) oMenu[propsDefault.path] = `${path}/index`;
+              if (!isURL(path)) oMenu[propsDefault.pathValue] = `${path}/index`;
               return [{
                 component(resolve) {
                   require([`../${component}.vue`], resolve)
diff --git a/Source/ProjectWeb/src/store/modules/user.js b/Source/ProjectWeb/src/store/modules/user.js
index f522601..4227cc6 100644
--- a/Source/ProjectWeb/src/store/modules/user.js
+++ b/Source/ProjectWeb/src/store/modules/user.js
@@ -14,7 +14,7 @@
   const propsConfig = menu.props;
   const propsDefault = {
     label: propsConfig.label || 'name',
-    path: 'code',
+    path: propsConfig.path || 'path',
     icon: propsConfig.icon || 'icon',
     children: propsConfig.children || 'children'
   }
@@ -27,9 +27,19 @@
   } else {
     ele[propsDefault.children].forEach(child => {
       addPath(child);
-    })
-  }
+    });
 
+  }
+}
+
+function updateCode(items) {
+  items.forEach(item => {
+    item.pathValue = item.path;
+    item.path = '/' + item.code;
+    if (item.children && item.children.length > 0) {
+      updateCode(item.children);
+    }
+  });
 }
 
 
@@ -356,7 +366,7 @@
                       "name": "鍏稿瀷瑙勭▼",
                       "parentId": "BDBD6CFA-2F4C-EEF7-C380-5E9BBF6A37B3",
                       "parentName": null,
-                      "path": "bs=?image=typical&type=workorder&context=TypicalProcessLib",
+                      "path": "bs=test?image=typical&type=workorder&context=TypicalProcessLib",
                       "remark": null,
                       "sort": 1,
                       "source": ""
@@ -400,24 +410,9 @@
           let menu = deepClone(list);
           menu.forEach(ele => {
             addPath(ele, true);
+            updateCode([ele]);
           });
-          updateCode(menu)
-          function updateCode(items) {
-            items.forEach(item => {
-              // 灏嗗瓧绗︿覆鍒嗗壊鎴愭暟缁勶紝浠�'?'浣滀负鍒嗛殧绗�
-              let parts = item.path.split("?");
-              // 濡傛灉鏁扮粍鐨勯暱搴﹀ぇ浜�1锛岃〃绀烘湁'?'锛屽垯鍙栫涓�涓厓绱犵殑绗竴涓儴鍒嗭紝鍚﹀垯鐩存帴鍙栨暣涓瓧绗︿覆
-              let bsValue = parts.length > 1 ? parts[0].split("=")[1] : item.path.split("=")[1];
-              if (bsValue ===''  || bsValue === undefined || bsValue === null) {
-                bsValue = "UI";
-              }
-              item.path = bsValue === 'UI' ? '/base/UIContentViewer' :  `/custom-ui/${bsValue}`;
-              // 濡傛灉children涓嶄负绌猴紝閫掑綊璋冪敤杩欎釜鍑芥暟
-              if (item.children && item.children.length > 0) {
-                updateCode(item.children);
-              }
-            });
-          }
+
           commit('SET_MENU_ALL', menu)
           commit('SET_MENU', menu)
           //dispatch('GetButtons');s

--
Gitblit v1.9.3