diff --git a/frontend/src/components/DeDrag/index.vue b/frontend/src/components/DeDrag/index.vue
index b47cb117ca..300e8c53c3 100644
--- a/frontend/src/components/DeDrag/index.vue
+++ b/frontend/src/components/DeDrag/index.vue
@@ -629,7 +629,7 @@ export default {
elementMouseDown(e) {
// private 设置当前组件数据及状态
this.$store.commit('setClickComponentStatus', true)
- if (this.element.component !== 'v-text' && this.element.component !== 'rect-shape' && this.element.component !== 'de-input-search' && this.element.component !== 'de-number-range') {
+ if (this.element.component !== 'v-text' && this.element.component !== 'rect-shape' && this.element.component !== 'de-input-search' && this.element.component !== 'de-select-grid' && this.element.component !== 'de-number-range') {
e.preventDefault()
}
// 阻止冒泡事件
diff --git a/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue b/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue
index 88216e9e1a..b789d127d8 100644
--- a/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue
+++ b/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue
@@ -104,7 +104,7 @@ export default {
elementMouseDown(e) {
// private 设置当前组件数据及状态
this.$store.commit('setClickComponentStatus', true)
- if (this.config.component !== 'v-text' && this.config.component !== 'rect-shape' && this.config.component !== 'de-input-search' && this.config.component !== 'de-number-range') {
+ if (this.config.component !== 'v-text' && this.config.component !== 'rect-shape' && this.config.component !== 'de-input-search' && this.config.component !== 'de-select-grid' && this.config.component !== 'de-number-range') {
e.preventDefault()
}
// 阻止冒泡事件
diff --git a/frontend/src/components/canvas/components/Editor/Shape.vue b/frontend/src/components/canvas/components/Editor/Shape.vue
index b0475bd00d..b4c0e74bbf 100644
--- a/frontend/src/components/canvas/components/Editor/Shape.vue
+++ b/frontend/src/components/canvas/components/Editor/Shape.vue
@@ -226,7 +226,7 @@ export default {
handleMouseDownOnShape(e) {
this.$store.commit('setClickComponentStatus', true)
- if (this.element.component !== 'v-text' && this.element.component !== 'rect-shape' && this.element.component !== 'de-input-search' && this.element.component !== 'de-number-range') {
+ if (this.element.component !== 'v-text' && this.element.component !== 'rect-shape' && this.element.component !== 'de-input-search' && this.element.component !== 'de-select-grid' && this.element.component !== 'de-number-range') {
e.preventDefault()
}
diff --git a/frontend/src/components/widget/DeWidget/DeSelectGrid.vue b/frontend/src/components/widget/DeWidget/DeSelectGrid.vue
index c50648ee74..ccf8d14349 100644
--- a/frontend/src/components/widget/DeWidget/DeSelectGrid.vue
+++ b/frontend/src/components/widget/DeWidget/DeSelectGrid.vue
@@ -4,14 +4,13 @@
-
+
@@ -71,7 +70,7 @@ export default {
label: 'text',
children: 'children'
},
- keyWord: null,
+ keyWord: '',
allNode: {
id: (-2 << 16) + '',
text: this.$t('commons.all'),
@@ -107,10 +106,11 @@ export default {
sourceValid && Array.isArray(sourceValue) && (this.options.value = sourceValue[0])
!this.inDraw && (this.options.value = null)
}
- },
- keyWord(val) {
- this.$refs.deSelectGrid.filter(val)
}
+ // keyWord(val) {
+ // console.log(val)
+ // this.$refs.deSelectGrid.filter(val)
+ // }
},
created() {
this.options = this.element.options
@@ -206,10 +206,10 @@ export default {
this.options.value = null
this.changeRadioBox()
},
- filterNode(value, data) {
- if (!value) return true
- return data[this.defaultProp.label].indexOf(value) !== -1
- },
+ // filterNode(value, data) {
+ // if (!value) return true
+ // return data[this.defaultProp.label].indexOf(value) !== -1
+ // },
styleChange() {
this.$store.state.styleChangeTimes++
}
@@ -246,4 +246,13 @@ export default {
border-radius: 0px;
}
}
+.de-select-grid-class {
+ .list {
+ overflow-y: auto;
+ width: 100%;
+ position: absolute;
+ top: 30px;
+ bottom: 0;
+ }
+}
diff --git a/frontend/src/lang/en.js b/frontend/src/lang/en.js
index 42b5dd7f8d..033b0da0bf 100644
--- a/frontend/src/lang/en.js
+++ b/frontend/src/lang/en.js
@@ -840,7 +840,9 @@ export default {
bubble_symbol: 'Shape',
gap_width: 'Gap Width',
width: 'Width',
- height: 'Height'
+ height: 'Height',
+ system_case: 'System',
+ custom_case: 'Custom'
},
dataset: {
sheet_warn: 'There are multiple sheet pages, and the first one is extracted by default',
diff --git a/frontend/src/lang/tw.js b/frontend/src/lang/tw.js
index 5ac621159c..a973e69f36 100644
--- a/frontend/src/lang/tw.js
+++ b/frontend/src/lang/tw.js
@@ -840,7 +840,9 @@ export default {
bubble_symbol: '圖形',
gap_width: '間隔',
width: '寬度',
- height: '高度'
+ height: '高度',
+ system_case: '系統方案',
+ custom_case: '自定義'
},
dataset: {
sheet_warn: '有多個sheet頁面,默認抽取第一個',
diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js
index fe7c71e7c2..285de2d1d8 100644
--- a/frontend/src/lang/zh.js
+++ b/frontend/src/lang/zh.js
@@ -840,7 +840,9 @@ export default {
bubble_symbol: '图形',
gap_width: '间隔',
width: '宽度',
- height: '高度'
+ height: '高度',
+ system_case: '系统方案',
+ custom_case: '自定义'
},
dataset: {
sheet_warn: '有多个 Sheet 页,默认抽取第一个',
diff --git a/frontend/src/styles/index.scss b/frontend/src/styles/index.scss
index 424329d78f..c9ac0ad0dd 100644
--- a/frontend/src/styles/index.scss
+++ b/frontend/src/styles/index.scss
@@ -235,6 +235,15 @@ div:focus {
div.el-input-group__append {
width: 10% !important;
}
+ .de-select-grid-class {
+ .list {
+ position: relative !important;
+ height: 200px !important;
+ overflow-y: scroll !important;
+ top: 0px !important;
+ }
+ }
+
}
%field-icon {
diff --git a/frontend/src/views/chart/components/shape-attr/ColorSelector.vue b/frontend/src/views/chart/components/shape-attr/ColorSelector.vue
index f397633982..7ea65b4b82 100644
--- a/frontend/src/views/chart/components/shape-attr/ColorSelector.vue
+++ b/frontend/src/views/chart/components/shape-attr/ColorSelector.vue
@@ -4,14 +4,46 @@
-
-
-
-
+
+
+
+
{{ $t('chart.system_case') }}
+
+
+
+
+
+ {{ option.name }}
+
+
+
{{ $t('commons.reset') }}
-
{{ option.name }}
-
-
+
+ {{ $t('chart.custom_case') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -149,12 +181,16 @@ export default {
colors: ['#00a3af', '#4da798', '#57baaa', '#62d0bd', '#6ee4d0', '#86e7d6', '#aeede1', '#bde1e6', '#e5e5e5']
}
],
- colorForm: JSON.parse(JSON.stringify(DEFAULT_COLOR_CASE))
+ colorForm: JSON.parse(JSON.stringify(DEFAULT_COLOR_CASE)),
+ customColor: null,
+ colorIndex: 0
}
},
watch: {
'chart': {
handler: function() {
+ this.customColor = null
+ this.colorIndex = 0
this.init()
}
}
@@ -172,6 +208,8 @@ export default {
val.value = items[0].value
val.colors = items[0].colors
this.$emit('onColorChange', val)
+ this.customColor = null
+ this.colorIndex = 0
},
init() {
const chart = JSON.parse(JSON.stringify(this.chart))
@@ -184,8 +222,26 @@ export default {
}
if (customAttr.color) {
this.colorForm = customAttr.color
+ if (!this.customColor) {
+ this.customColor = this.colorForm.colors[0]
+ this.colorIndex = 0
+ }
}
}
+ },
+
+ switchColor(index) {
+ this.colorIndex = index
+ },
+ switchColorCase() {
+ this.colorForm.colors[this.colorIndex] = this.customColor
+ this.$emit('onColorChange', this.colorForm)
+ },
+
+ resetCustomColor() {
+ this.customColor = this.colorForm.colors[0]
+ this.colorIndex = 0
+ this.changeColorCase()
}
}
}
@@ -220,4 +276,22 @@ export default {
cursor: pointer;
z-index: 1003;
}
+ .color-label{
+ display: inline-block;
+ width: 60px;
+ }
+
+ .color-type>>>.el-radio__input{
+ display: none;
+ }
+ .el-radio{
+ margin:0 2px 0 0!important;
+ }
+ .el-radio>>>.el-radio__label{
+ padding-left: 0;
+ }
+
+ .el-radio.is-checked{
+ border: 1px solid #0a7be0;
+ }
diff --git a/frontend/src/views/panel/edit/index.vue b/frontend/src/views/panel/edit/index.vue
index 5149e7ab18..729d4f6f62 100644
--- a/frontend/src/views/panel/edit/index.vue
+++ b/frontend/src/views/panel/edit/index.vue
@@ -116,7 +116,7 @@
diff --git a/frontend/src/views/panel/filter/filterDialog.vue b/frontend/src/views/panel/filter/filterDialog.vue
index c655a042b1..af9c4f8d90 100644
--- a/frontend/src/views/panel/filter/filterDialog.vue
+++ b/frontend/src/views/panel/filter/filterDialog.vue
@@ -39,8 +39,18 @@
@node-click="handleNodeClick"
>
-
-
{{ node.label }}
+
+
+
+
+
+
+
+
+ {{ node.label }}
+ {{ node.label }}
+
+