From 4de3738f235f5360439885053e2f2d3577f54618 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期日, 07 四月 2024 16:55:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/ProjectWeb/src/router/page/index.js  |   12 ++
 Source/ProjectWeb/src/router/avue-router.js |   35 ++++--
 Source/ProjectWeb/src/store/modules/user.js |  215 ++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 248 insertions(+), 14 deletions(-)

diff --git a/Source/ProjectWeb/src/router/avue-router.js b/Source/ProjectWeb/src/router/avue-router.js
index a12448f..933f2a5 100644
--- a/Source/ProjectWeb/src/router/avue-router.js
+++ b/Source/ProjectWeb/src/router/avue-router.js
@@ -97,7 +97,8 @@
       // 璁剧疆 props榛樿鍊� 浣滅敤灏辨槸灏嗗瓧娈佃缃垚閰嶇疆鐨�
       const propsDefault = {
         label: propsConfig.label || 'name',
-        path: propsConfig.path || 'path',
+        path: 'code',
+        pathValue:propsConfig.path || 'path',
         icon: propsConfig.icon || 'icon',
         children: propsConfig.children || 'children',
         meta: propsConfig.meta || 'meta',
@@ -110,15 +111,27 @@
         const oMenu = aMenu[i];
         // 杩欎竴鍧楃殑璧嬪�� 涔熷氨鏄彇鍒拌繑鍥炵殑鍊�
         let path = (() => {
-            if (first) {
-              // 灏� '/index' 鏇挎崲涓� ''
-              return oMenu[propsDefault.path].replace('/index', '')
-            } else {
-              return oMenu[propsDefault.path]
-            }
-          })(),
-          //鐗规畩澶勭悊缁勪欢 鎵ц瀹岃繖涓� component 涔熷氨鏄簿纭埌鍏蜂綋鐨勬枃浠朵簡  views鏂囦欢澶逛笅闈㈠氨鏄叿浣撶殑椤甸潰浠g爜
-          component = 'views' + path,
+          if (first) {
+            // 灏� '/index' 鏇挎崲涓� ''
+            return oMenu[propsDefault.pathValue].replace('/index', '')
+          } else {
+            return oMenu[propsDefault.pathValue]
+          }
+        })();
+        let code = (() => {
+            return oMenu[propsDefault.path]
+        })();
+        // 灏嗗瓧绗︿覆鍒嗗壊鎴愭暟缁勶紝浠�'?'浣滀负鍒嗛殧绗�
+        let parts = path.split("?");
+        // 濡傛灉鏁扮粍鐨勯暱搴﹀ぇ浜�1锛岃〃绀烘湁'?'锛屽垯鍙栫涓�涓厓绱犵殑绗竴涓儴鍒嗭紝鍚﹀垯鐩存帴鍙栨暣涓瓧绗︿覆
+        let bsValue = parts.length > 1 ? parts[0].split("=")[1] : path.split("=")[1];
+
+        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],
           icon = oMenu[propsDefault.icon],
           children = oMenu[propsDefault.children],
@@ -134,7 +147,7 @@
         //鏄惁鏈夊瓙璺敱
         const isChild = children.length !== 0;
         const oRouter = {
-          path: path,
+          path: code,
           component(resolve) {
             // 鍒ゆ柇鏄惁涓洪璺敱
             if (first) {
diff --git a/Source/ProjectWeb/src/router/page/index.js b/Source/ProjectWeb/src/router/page/index.js
index 255d6a9..6172f26 100644
--- a/Source/ProjectWeb/src/router/page/index.js
+++ b/Source/ProjectWeb/src/router/page/index.js
@@ -90,6 +90,18 @@
     ]
   },
   {
+    path: '/UIContentViewer',
+    name: '鍔ㄦ�佽〃鏍奸〉闈�',
+    component: Layout,
+    children: [
+      {
+        path: '', // 绌鸿矾寰勮〃绀鸿闂� '/dynamic-form' 鏃跺姞杞� Layout 缁勪欢
+        component: () => import('@/views/base/UIContentViewer'),
+        props: true
+      }
+    ]
+  },
+  {
     path: '/referIndex',
     name: '鍔ㄦ�佽〃鏍奸〉闈�',
     component: Layout,
diff --git a/Source/ProjectWeb/src/store/modules/user.js b/Source/ProjectWeb/src/store/modules/user.js
index 1a65fee..f522601 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: propsConfig.path || 'path',
+    path: 'code',
     icon: propsConfig.icon || 'icon',
     children: propsConfig.children || 'children'
   }
@@ -31,6 +31,8 @@
   }
 
 }
+
+
 
 const user = {
   state: {
@@ -204,14 +206,221 @@
     GetMenu({commit, dispatch}, topMenuId) {
       return new Promise(resolve => {
         getRoutes('modelManagmentNode').then((res) => {
+          const list =[
+            {
+              "action": null,
+              "actionName": null,
+              "alias": "璧勬簮搴�",
+              "category": null,
+              "categoryName": null,
+              "children": [
+                {
+                  "action": null,
+                  "actionName": null,
+                  "alias": "鐭ヨ瘑搴�",
+                  "category": null,
+                  "categoryName": null,
+                  "children": [
+                    {
+                      "action": null,
+                      "actionName": null,
+                      "alias": "resourcelib",
+                      "category": null,
+                      "categoryName": null,
+                      "children": [],
+                      "code": "resourcelib",
+                      "hasChildren": false,
+                      "id": "2C5FABD2-535F-8568-8E61-C643BA7D77A1",
+                      "isOpen": null,
+                      "isOpenName": null,
+                      "meta": {
+                        "keepAlive": false
+                      },
+                      "name": "璁惧璧勬簮搴�",
+                      "parentId": "9B00AD2C-A407-7F71-B35C-58E466E53A33",
+                      "parentName": null,
+                      "path": "bs=test?image=resource&type=folder&context=resourcemanager&querytype=0&querytemplate=resourcelibroot",
+                      "remark": null,
+                      "sort": 1,
+                      "source": ""
+                    },
+                    {
+                      "action": null,
+                      "actionName": null,
+                      "alias": "宸ヨ壓鐭ヨ瘑搴�",
+                      "category": null,
+                      "categoryName": null,
+                      "children": [],
+                      "code": "gongyi",
+                      "hasChildren": false,
+                      "id": "AC04E222-F14B-F4FF-11BB-DFE8917A2756",
+                      "isOpen": null,
+                      "isOpenName": null,
+                      "meta": {
+                        "keepAlive": false
+                      },
+                      "name": "宸ヨ壓鐭ヨ瘑搴�",
+                      "parentId": "9B00AD2C-A407-7F71-B35C-58E466E53A33",
+                      "parentName": null,
+                      "path": "bs=UI?image=report&type=folder&context=knowledgemanager&querytype=0&querytemplate=knowledgelibroot",
+                      "remark": null,
+                      "sort": 2,
+                      "source": ""
+                    }
+                  ],
+                  "code": "zhishiku",
+                  "hasChildren": true,
+                  "id": "9B00AD2C-A407-7F71-B35C-58E466E53A33",
+                  "isOpen": null,
+                  "isOpenName": null,
+                  "meta": {
+                    "keepAlive": false
+                  },
+                  "name": "鐭ヨ瘑搴�",
+                  "parentId": "4EDC91B8-E3B2-D126-E75C-D2CEC59F53CE",
+                  "parentName": null,
+                  "path": "bs=/base",
+                  "remark": null,
+                  "sort": 1,
+                  "source": ""
+                },
+                {
+                  "action": null,
+                  "actionName": null,
+                  "alias": "TemplateLib",
+                  "category": null,
+                  "categoryName": null,
+                  "children": [
+                    {
+                      "action": null,
+                      "actionName": null,
+                      "alias": "CardTemplateLib",
+                      "category": null,
+                      "categoryName": null,
+                      "children": [],
+                      "code": "CardTemplateLib",
+                      "hasChildren": false,
+                      "id": "E6E963E7-2DF6-80EE-2A61-FA86E0F3D5F2",
+                      "isOpen": null,
+                      "isOpenName": null,
+                      "meta": {
+                        "keepAlive": false
+                      },
+                      "name": "鍗$墖妯℃澘",
+                      "parentId": "8493A92A-13DA-8800-140D-9C0C4A722665",
+                      "parentName": null,
+                      "path": "bs=?image=card&type=folder&context=cardtemplatemanager&querytype=0&querytemplate=cardtemplateroot",
+                      "remark": null,
+                      "sort": 1,
+                      "source": ""
+                    }
+                  ],
+                  "code": "TemplateLib",
+                  "hasChildren": true,
+                  "id": "8493A92A-13DA-8800-140D-9C0C4A722665",
+                  "isOpen": null,
+                  "isOpenName": null,
+                  "meta": {
+                    "keepAlive": false
+                  },
+                  "name": "妯℃澘搴�",
+                  "parentId": "4EDC91B8-E3B2-D126-E75C-D2CEC59F53CE",
+                  "parentName": null,
+                  "path": "bs=mb",
+                  "remark": null,
+                  "sort": 2,
+                  "source": ""
+                },
+                {
+                  "action": null,
+                  "actionName": null,
+                  "alias": "鍏稿瀷鏁版嵁搴�",
+                  "category": null,
+                  "categoryName": null,
+                  "children": [
+                    {
+                      "action": null,
+                      "actionName": null,
+                      "alias": "鍏稿瀷瑙勭▼",
+                      "category": null,
+                      "categoryName": null,
+                      "children": [],
+                      "code": "guicheng",
+                      "hasChildren": false,
+                      "id": "B3EC1413-1A33-61E3-DDD1-CB4D0CFD0C6E",
+                      "isOpen": null,
+                      "isOpenName": null,
+                      "meta": {
+                        "keepAlive": false
+                      },
+                      "name": "鍏稿瀷瑙勭▼",
+                      "parentId": "BDBD6CFA-2F4C-EEF7-C380-5E9BBF6A37B3",
+                      "parentName": null,
+                      "path": "bs=?image=typical&type=workorder&context=TypicalProcessLib",
+                      "remark": null,
+                      "sort": 1,
+                      "source": ""
+                    }
+                  ],
+                  "code": "dianxing",
+                  "hasChildren": true,
+                  "id": "BDBD6CFA-2F4C-EEF7-C380-5E9BBF6A37B3",
+                  "isOpen": null,
+                  "isOpenName": null,
+                  "meta": {
+                    "keepAlive": false
+                  },
+                  "name": "鍏稿瀷鏁版嵁搴�",
+                  "parentId": "4EDC91B8-E3B2-D126-E75C-D2CEC59F53CE",
+                  "parentName": null,
+                  "path": "bs=dx",
+                  "remark": null,
+                  "sort": 3,
+                  "source": ""
+                }
+              ],
+              "code": "ziyuanku",
+              "hasChildren": true,
+              "id": "4EDC91B8-E3B2-D126-E75C-D2CEC59F53CE",
+              "isOpen": null,
+              "isOpenName": null,
+              "meta": {
+                "keepAlive": false
+              },
+              "name": "璧勬簮搴�",
+              "parentId": "modelManagmentNode",
+              "parentName": null,
+              "path": "bs=zy",
+              "remark": null,
+              "sort": 913,
+              "source": ""
+            }
+          ];
           const data = res.data.obj;
-          let menu = deepClone(data);
+          let menu = deepClone(list);
           menu.forEach(ele => {
             addPath(ele, true);
           });
+          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');
+          //dispatch('GetButtons');s
           resolve(menu)
         })
       })

--
Gitblit v1.9.3