This is an automated email from the ASF dual-hosted git repository.

xxyu pushed a commit to branch kylin5
in repository https://gitbox.apache.org/repos/asf/kylin.git

commit 24e0d25b7e4b8ada9eaad09eb9fa2a65b41d70e1
Author: Qian Xia <lauraxiaq...@gmail.com>
AuthorDate: Wed Jul 5 15:15:48 2023 +0800

    KYLIN-5593 hide column data when has not data permission
---
 .../StudioSource/TableSamples/TableSamples.vue     | 22 +++++++++++++++++-----
 .../studio/StudioSource/TableSamples/locales.js    |  3 ++-
 2 files changed, 19 insertions(+), 6 deletions(-)

diff --git 
a/kystudio/src/components/studio/StudioSource/TableSamples/TableSamples.vue 
b/kystudio/src/components/studio/StudioSource/TableSamples/TableSamples.vue
index ab7a4580d0..9ed87b54ec 100644
--- a/kystudio/src/components/studio/StudioSource/TableSamples/TableSamples.vue
+++ b/kystudio/src/components/studio/StudioSource/TableSamples/TableSamples.vue
@@ -1,6 +1,6 @@
 <template>
   <div class="table-sample">
-    <div v-if="table.last_build_job_id || pagedColumns.length">
+    <div v-if="(table.last_build_job_id || pagedColumns.length) && 
extPermissions">
       <div class="columns-header">
         <div class="left font-medium">
           {{$t('version')}}{{table.create_time | toGMTDate}}
@@ -25,15 +25,22 @@
         </el-table-column>
       </el-table>
     </div>
-    <kylin-empty-data v-if="!table.last_build_job_id&&!pagedColumns.length" 
:content="$t('noSampling')">
-    </kylin-empty-data>
-    <kylin-nodata v-if="(table.last_build_job_id || 
pagedColumns.length)&&!headers.length&&this.filterText" 
:content="$t('kylinLang.common.noResults')"></kylin-nodata>
-  </div>
+    <template v-if="extPermissions">
+      <kylin-empty-data v-if="!table.last_build_job_id&&!pagedColumns.length" 
:content="$t('noSampling')">
+      </kylin-empty-data>
+      <kylin-nodata v-if="(table.last_build_job_id || 
pagedColumns.length)&&!headers.length&&this.filterText" 
:content="$t('kylinLang.common.noResults')"></kylin-nodata>
+    </template>
+    <template v-else>
+      <kylin-empty-data v-if="table.last_build_job_id" 
:content="$t('noExtPermissions')" />
+      <kylin-empty-data v-else :content="$t('noSampling')" />
+    </template>
+    </div>
 </template>
 
 <script>
 import Vue from 'vue'
 import { Component } from 'vue-property-decorator'
+import { mapState } from 'vuex'
 
 import locales from './locales'
 
@@ -43,6 +50,11 @@ import locales from './locales'
       type: Object
     }
   },
+  computed: {
+    ...mapState({
+      extPermissions: state => state.user.ext_permissions
+    })
+  },
   locales
 })
 export default class TableSamples extends Vue {
diff --git 
a/kystudio/src/components/studio/StudioSource/TableSamples/locales.js 
b/kystudio/src/components/studio/StudioSource/TableSamples/locales.js
index 8235093203..003c28780e 100644
--- a/kystudio/src/components/studio/StudioSource/TableSamples/locales.js
+++ b/kystudio/src/components/studio/StudioSource/TableSamples/locales.js
@@ -4,6 +4,7 @@ export default {
     filterColumns: 'Search columns',
     pageRange: 'Columns {pageRange}',
     noSampling: 'The table hasn\'t been sampled yet. Statistical information 
(cardinality, sample data, etc.) gathered by sampling could help design the 
model. ',
-    noSamplingData: 'No sampling results'
+    noSamplingData: 'No sampling results',
+    noExtPermissions: 'The table has been sampled. The current user does not 
have data permissions, so sampled data is not displayed.'
   }
 }

Reply via email to