Эх сурвалжийг харах

fix:组件数据源选项保存到后端

liu.shiyi 1 жил өмнө
parent
commit
268f72e3f3

+ 9 - 11
data-room-ui/packages/BigScreenDesign/RightSetting/DataSetting.vue

@@ -27,7 +27,7 @@
               label="数据来源"
               label="数据来源"
             >
             >
               <el-radio-group
               <el-radio-group
-                v-model="dataSourceStyle"
+                v-model="config.dataSource.source "
                 class="bs-el-radio-group"
                 class="bs-el-radio-group"
               >
               >
                 <el-radio label="dataset">
                 <el-radio label="dataset">
@@ -39,7 +39,7 @@
               </el-radio-group>
               </el-radio-group>
             </el-form-item>
             </el-form-item>
             <el-form-item
             <el-form-item
-              v-if="dataSourceStyle === 'dataset'"
+              v-if="config.dataSource.source === 'dataset'"
               label="数据集"
               label="数据集"
             >
             >
               <data-set-select
               <data-set-select
@@ -56,7 +56,7 @@
               </data-set-select>
               </data-set-select>
             </el-form-item>
             </el-form-item>
             <el-form-item
             <el-form-item
-              v-if="dataSourceStyle === 'expression' && config.option.displayOption.expression && config.option.displayOption.expression.enable"
+              v-if="config.dataSource.source === 'expression' && config.option.displayOption.expression && config.option.displayOption.expression.enable"
               label="表达式"
               label="表达式"
             >
             >
               <i
               <i
@@ -102,7 +102,7 @@ data.forEach(item => {
           </div>
           </div>
         </div>
         </div>
         <div
         <div
-          v-if="!['tree','multipleNumberChart','carousel'].includes(config.type) && config.option.displayOption.dataSourceType.enable && dataSourceStyle !== 'expression'"
+          v-if="!['tree','multipleNumberChart','carousel'].includes(config.type) && config.option.displayOption.dataSourceType.enable && config.dataSource.source !== 'expression'"
           class="data-setting-data-box"
           class="data-setting-data-box"
         >
         >
           <div class="lc-field-head">
           <div class="lc-field-head">
@@ -300,7 +300,7 @@ data.forEach(item => {
               <el-table-column
               <el-table-column
                 prop="width"
                 prop="width"
                 label="列宽"
                 label="列宽"
-                width='90'
+                width="90"
                 align="center"
                 align="center"
               >
               >
                 <template slot-scope="scope">
                 <template slot-scope="scope">
@@ -470,7 +470,7 @@ data.forEach(item => {
           </div>
           </div>
         </div>
         </div>
         <div
         <div
-          v-if="config.option.displayOption.params.enable && dataSourceStyle !== 'expression'"
+          v-if="config.option.displayOption.params.enable && config.dataSource.source !== 'expression'"
           class="data-setting-data-box"
           class="data-setting-data-box"
         >
         >
           <div class="lc-field-head">
           <div class="lc-field-head">
@@ -642,7 +642,6 @@ export default {
   },
   },
   data () {
   data () {
     return {
     return {
-      dataSourceStyle: 'dataset', // 数据来源方式
       fieldsList: [],
       fieldsList: [],
       params: [], // 参数配置
       params: [], // 参数配置
       datasetName: '',
       datasetName: '',
@@ -764,11 +763,10 @@ export default {
     }
     }
   },
   },
   methods: {
   methods: {
-    changeDsid(dsId){
-       this.clearVerify()
-      this.config.customize.columnConfig=[]
+    changeDsid (dsId) {
+      this.clearVerify()
+      this.config.customize.columnConfig = []
       this.getDataSetDetailsById(dsId, 'treeTable')
       this.getDataSetDetailsById(dsId, 'treeTable')
-
     },
     },
     // 打开表达式弹窗
     // 打开表达式弹窗
     openExpression () {
     openExpression () {

+ 1 - 0
data-room-ui/packages/js/config/commonConfig.js

@@ -67,6 +67,7 @@ export default function (customConfig) {
       className:
       className:
         'com.gccloud.dataroom.core.module.chart.components.datasource.DataSetDataSource',
         'com.gccloud.dataroom.core.module.chart.components.datasource.DataSetDataSource',
       dataSourceKey: '', // 数据源,选择不同数据库
       dataSourceKey: '', // 数据源,选择不同数据库
+      source: 'dataset',
       businessKey: '', // 数据集标识
       businessKey: '', // 数据集标识
       dimensionField: '', // 维度
       dimensionField: '', // 维度
       metricField: '', // 指标
       metricField: '', // 指标

+ 4 - 0
data-room-ui/packages/js/store/actions.js

@@ -18,6 +18,10 @@ export default {
         const pageInfo = handleResData(data)
         const pageInfo = handleResData(data)
         // 兼容边框配置
         // 兼容边框配置
         pageInfo.chartList.forEach((item) => {
         pageInfo.chartList.forEach((item) => {
+          if (item.dataSource) {
+            item.dataSource.source = item.dataSource?.source || 'dataset'
+          }
+
           if (!item.border) {
           if (!item.border) {
             item.border = { type: '', titleHeight: 60, fontSize: 16, isTitle: true, padding: [0, 0, 0, 0] }
             item.border = { type: '', titleHeight: 60, fontSize: 16, isTitle: true, padding: [0, 0, 0, 0] }
           }
           }