From 7d6fdd87d9cbb948baeacdadf547b19bd26eb232 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期日, 31 三月 2024 23:35:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue |   64 ++++++++++++++------------------
 1 files changed, 28 insertions(+), 36 deletions(-)

diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue
index a64f2ae..a1188ad 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue
@@ -1,15 +1,16 @@
 <template>
   <div class="UI-dynamic" :id="'UI-dynamic-'+areasName+componentVO.oid">
-    <div v-if="isError" style="color: #F56C6C">杩欎釜鑷畾涔夐〉闈㈢殑鍦板潃鏍煎紡涓嶆纭�傛帹鑽愪娇鐢║I:type#content?param=xxx杩欑褰㈠紡</div>
+    <div v-if="isError" style="color: #F56C6C">杩欎釜鑷畾涔夐〉闈㈢殑鍦板潃鏍煎紡涓嶆纭�傛帹鑽愪娇鐢╞s=?type=xxx&context=yyy&pparam=zzz杩欑褰㈠紡</div>
     <component v-else :is="currentComponent"
-               :customOptions="customOptions"
+               :btmType="customOptions.btmType"
+               :content="customOptions.content"
                :inDialog="true"
                :key="areasName+'customCom-'+componentVO.oid"
                :componentVO="componentVO"
                :sourceData="sourceData"
                :dataStore="dataStore"
                :areasName="areasName"
-               :paramVOS="paramVOS"></component>
+               :paramVOS="customOptions.paramVOS"></component>
   </div>
 </template>
 
@@ -18,8 +19,8 @@
   name: "dynamic-custom",
   components:{
     'UI':()=>import('@/views/base/UIContentViewerInDialog'),
-    'test':()=>import('@/components/custom-ui/test'),
-    'test2':()=>import('@/components/custom-ui/test2'),
+    'test':()=>import('@/views/custom-ui/test'),
+    'test2':()=>import('@/views/custom-ui/test2'),
   },
   props:{
     componentVO:{
@@ -35,7 +36,7 @@
       default:''
     },
     sourceData:{
-      //鑿滃崟婧愭暟鎹垨鑰呭脊绐楁椂鎸夐挳鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁
+      //鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁
       type:Object,
       default: {}
     },
@@ -57,7 +58,7 @@
   data() {
     return {
       height:'300px',
-      customClass:this.componentVO.customClass, //UI:type#content?param=xxx鎴栬�� 缁勪欢name:type#content?param=xxx
+      customClass:this.componentVO.customClass, //bs=?type=xxx&context=yyy&param=zzz  鎴栬�� bs=缁勪欢name?type=xxx&context=yyy&param=zzz
       isError:false, //璺緞瑙f瀽澶辫触
       currentComponent: 'UI',//缁勪欢name
     }
@@ -73,45 +74,36 @@
   },
   computed:{
     customOptions() {
-      if(this.customClass.indexOf(":") <0){
+      if(this.customClass.indexOf("bs=") <0){
         this.isError=true;
         return ;
       }
-
-      if(this.customClass.split(':')[0]!='UI' && this.customClass.split(':')[0]!='ui'){
-        this.currentComponent=this.customClass.split(':')[0];
+      this.customClass=this.componentVO.customClass.split("bs=")[1];
+      if(this.customClass.indexOf("?") <0 || this.customClass.indexOf("type=") <0 || this.customClass.indexOf("context=") <0){
+        this.isError=true;
+        return ;
       }
+      if(this.customClass.split('?')[0]!='' && this.customClass.split('?')[0]!='UI' && this.customClass.split('?')[0]!='ui'){
+        this.currentComponent=this.customClass.split('?')[0];
+      }
+      this.customClass=this.componentVO.customClass.split("?")[1].split('&');
       let urlParams={};
       let btmType=''
       let content=''
-      if(this.customClass.split(':')[1].indexOf("?") <0){
-        btmType=this.customClass.split(':')[1].split('#')[0];
-        content=this.customClass.split(':')[1].split('#')[1];
-      }else {
-        let split1 = this.customClass.split(':')[1].split('?')[0];
-        let split2 = this.customClass.split(':')[1].split('?')[1];
-        btmType=split1.split('#')[0];
-        content=split1.split('#')[1];
-        let paramsArray = split2.split("&");
-        paramsArray.forEach(item=>{
-          var preParam =item.split("=");
-          if(preParam[0]=='btmname'){
-            urlParams['btmType']=preParam[1];
-          }else if(preParam[0]=='imagetype'){
-            urlParams['imageType']=preParam[1];
-            if(preParam[1]=='fileobject'){
-
-            }
-          }else{
-            urlParams[preParam[0]] = preParam[1];
-          }
-        })
-      }
-
+      this.customClass.forEach(item=>{
+        var preParam =item.split("=");
+        if(preParam[0]=='type'){
+          btmType=preParam[1];
+        }else if(preParam[0]=='context'){
+          content=preParam[1];
+        }else{
+          urlParams[preParam[0]] = preParam[1];
+        }
+      })
       return {
         btmType:btmType,
         content:content,
-        urlParams: urlParams
+        paramVOS:Object.assign(this.paramVOS,urlParams)
       }
     }
   },

--
Gitblit v1.9.3