diff --git a/core/core-frontend/src/assets/svg/calculate.svg b/core/core-frontend/src/assets/svg/calculate.svg
new file mode 100644
index 0000000000..600832e026
--- /dev/null
+++ b/core/core-frontend/src/assets/svg/calculate.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/core/core-frontend/src/components/icon-custom/src/Icon.vue b/core/core-frontend/src/components/icon-custom/src/Icon.vue
index 7d967ce2b3..98d900aaec 100644
--- a/core/core-frontend/src/components/icon-custom/src/Icon.vue
+++ b/core/core-frontend/src/components/icon-custom/src/Icon.vue
@@ -3,6 +3,7 @@ import { computed } from 'vue'
import { propTypes } from '@/utils/propTypes'
import _401 from '@/assets/svg/401.svg'
+import calculate from '@/assets/svg/calculate.svg'
import _403 from '@/assets/svg/403.svg'
import APIDs from '@/assets/svg/API-ds.svg'
import Apache_Hive from '@/assets/svg/Apache Hive.svg'
@@ -1330,6 +1331,7 @@ const iconMap = {
'word-cloud-dark': wordCloudDark,
'word-cloud-origin': wordCloudOrigin,
'word-cloud': wordCloud,
+ calculate,
'icon_file-doc_colorful': icon_file_doc_colorful
}
diff --git a/core/core-frontend/src/views/visualized/data/dataset/form/CalcFieldEdit.vue b/core/core-frontend/src/views/visualized/data/dataset/form/CalcFieldEdit.vue
index 3432721bc1..2fabb9f12b 100644
--- a/core/core-frontend/src/views/visualized/data/dataset/form/CalcFieldEdit.vue
+++ b/core/core-frontend/src/views/visualized/data/dataset/form/CalcFieldEdit.vue
@@ -1,10 +1,11 @@
@@ -358,7 +450,21 @@ initFunction()
{{ t('dataset.na') }}
-
{{ t('chart.quota') }}
+
+ {{ t('chart.quota') }}
+
+
+
+
+
+
-
+
+
+
+
{{ item.name }}
+
+
+
+
+
+
+
+
{{ t('dataset.na') }}
@@ -440,6 +557,32 @@ initFunction()
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -537,6 +680,30 @@ initFunction()
& > :nth-child(1) {
color: #1f2329;
}
+
+ .hover-icon_quota {
+ cursor: pointer;
+ height: 20px !important;
+ width: 20px !important;
+ border-radius: 4px;
+
+ &[aria-expanded='true'] {
+ background: rgba(31, 35, 41, 0.1);
+ }
+
+ &:hover {
+ background: rgba(31, 35, 41, 0.1);
+ }
+
+ &:active {
+ background: rgba(31, 35, 41, 0.2);
+ }
+ }
+
+ .not-allow {
+ cursor: not-allowed;
+ color: #bbbfc4 !important;
+ }
}
.item-dimension,
.item-quota {
@@ -553,6 +720,15 @@ initFunction()
margin-top: 4px;
word-break: break-all;
border-radius: 4px;
+
+ .icon-right {
+ display: none;
+ margin-left: auto;
+ align-items: center;
+ .ed-icon {
+ margin: 0 0 0 6px;
+ }
+ }
}
.item-dimension:hover {
@@ -571,6 +747,9 @@ initFunction()
background: rgba(4, 180, 156, 0.1);
border-color: #04b49c;
cursor: pointer;
+ .icon-right {
+ display: flex;
+ }
}
.function-style {
diff --git a/core/core-frontend/src/views/visualized/data/dataset/form/index.vue b/core/core-frontend/src/views/visualized/data/dataset/form/index.vue
index 075edd5641..c887f1cafc 100644
--- a/core/core-frontend/src/views/visualized/data/dataset/form/index.vue
+++ b/core/core-frontend/src/views/visualized/data/dataset/form/index.vue
@@ -1462,7 +1462,7 @@ const getDsIconName = data => {
:itemSize="40"
:data="datasourceTableData"
:total="datasourceTableData.length"
- :width="LeftWidth - 7"
+ :width="LeftWidth - 17"
:height="height - 305"
:scrollbarAlwaysOn="false"
class-name="el-select-dropdown__list"