From 414e03a0a0a6157b1b493330b0b18ffc17d75c91 Mon Sep 17 00:00:00 2001 From: qianming Date: Tue, 20 Jul 2021 20:44:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B0=94=E6=B3=A1=E5=9C=B0=E5=9B=BE=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=83=8C=E6=99=AF=E8=89=B2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/report/bigscreen/designer/tools.js | 206 +++++------------- .../widget/map/widgetAirBubbleMap.vue | 31 ++- 2 files changed, 64 insertions(+), 173 deletions(-) diff --git a/report-ui/src/views/report/bigscreen/designer/tools.js b/report-ui/src/views/report/bigscreen/designer/tools.js index 2bb224f9..efca0060 100644 --- a/report-ui/src/views/report/bigscreen/designer/tools.js +++ b/report-ui/src/views/report/bigscreen/designer/tools.js @@ -5714,7 +5714,7 @@ const widgetTools = [ name: 'background', required: false, placeholder: '', - value: '' + value: '#0F1C3C' }, [ { @@ -5819,159 +5819,6 @@ const widgetTools = [ }, ], }, -/* { - name: '数值设定', - list: [ - { - type: 'el-switch', - label: '显示', - name: 'isShow', - required: false, - placeholder: '', - value: true, - }, - { - type: 'el-switch', - label: '数值', - name: 'numberValue', - require: false, - placeholder: '', - value: true, - }, - { - type: 'el-switch', - label: '百分比', - name: 'percentage', - require: false, - placeholder: '', - value: false, - }, - { - type: 'el-input-number', - label: '字体大小', - name: 'fontSize', - required: false, - placeholder: '', - value: 14, - }, - { - type: 'vue-color', - label: '字体颜色', - name: 'subTextColor', - required: false, - placeholder: '', - value: '' - }, - { - type: 'el-select', - label: '字体粗细', - name: 'fontWeight', - required: false, - placeholder: '', - selectOptions: [ - {code: 'normal', name: '正常'}, - {code: 'bold', name: '粗体'}, - {code: 'bolder', name: '特粗体'}, - {code: 'lighter', name: '细体'} - ], - value: 'normal' - }, - ], - }, - { - name: '提示语设置', - list: [ - { - type: 'el-input-number', - label: '字体大小', - name: 'fontSize', - required: false, - placeholder: '', - value: 12 - }, - { - type: 'vue-color', - label: '网格线颜色', - name: 'lineColor', - required: false, - placeholder: '', - value: '' - }, - ], - }, - { - name: '图例操作', - list: [ - { - type: 'el-switch', - label: '图例', - name: 'isShowLegend', - required: false, - placeholder: '', - value: true, - }, - { - type: 'vue-color', - label: '字体颜色', - name: 'lengedColor', - required: false, - placeholder: '', - value: '#fff', - }, - { - type: 'el-input-number', - label: '字体大小', - name: 'lengedFontSize', - required: false, - placeholder: '', - value: 16, - }, - { - type: 'el-input-number', - label: '图例宽度', - name: 'lengedWidth', - required: false, - placeholder: '', - value: 15, - }, - { - type: 'el-select', - label: '横向位置', - name: 'lateralPosition', - required: false, - placeholder: '', - selectOptions: [ - {code: 'left', name: '左对齐'}, - {code: 'right', name: '右对齐'}, - ], - value: '' - }, - { - type: 'el-select', - label: '纵向位置', - name: 'longitudinalPosition', - required: false, - placeholder: '', - selectOptions: [ - {code: 'top', name: '顶部'}, - {code: 'bottom', name: '底部'}, - ], - value: '' - }, - { - type: 'el-select', - label: '布局前置', - name: 'layoutFront', - required: false, - placeholder: '', - selectOptions: [ - {code: 'vertical', name: '竖排'}, - {code: 'horizontal', name: '横排'}, - ], - value: '' - }, - ], - },*/ { name: '自定义配色', list: [ @@ -5986,7 +5833,56 @@ const widgetTools = [ }, ], ], - data: [], + data: [ + { + type: 'el-radio-group', + label: '数据类型', + name: 'dataType', + require: false, + placeholder: '', + selectValue: true, + selectOptions: [ + { + code: 'staticData', + name: '静态数据', + }, + { + code: 'dynamicData', + name: '动态数据', + }, + ], + value: 'staticData', + }, + { + type: 'el-input-number', + label: '刷新时间(毫秒)', + name: 'refreshTime', + relactiveDom: 'dataType', + relactiveDomValue: 'dynamicData', + value: 5000 + }, + { + type: 'el-button', + label: '静态数据', + name: 'staticData', + required: false, + placeholder: 'px', + relactiveDom: 'dataType', + relactiveDomValue: 'staticData', + value: '[{"value": 1048,"name": "搜索引擎"},{"value": 735, "name": "直接访问"},{"value": 580, "name": "邮件营销"},{"value": 484,"name":"联盟广告"},{"value":300,"name":"视频广告"}]', + }, + { + type: 'dycustComponents', + label: '', + name: 'dynamicData', + required: false, + placeholder: 'px', + relactiveDom: 'dataType', + chartType: 'widget-piechart', + relactiveDomValue: 'dynamicData', + value: '', + }, + ], position: [ { type: 'el-input-number', diff --git a/report-ui/src/views/report/bigscreen/designer/widget/map/widgetAirBubbleMap.vue b/report-ui/src/views/report/bigscreen/designer/widget/map/widgetAirBubbleMap.vue index e8f91fe0..af04624c 100644 --- a/report-ui/src/views/report/bigscreen/designer/widget/map/widgetAirBubbleMap.vue +++ b/report-ui/src/views/report/bigscreen/designer/widget/map/widgetAirBubbleMap.vue @@ -329,7 +329,7 @@ export default { offset: 1, color: 'rgba(0,108,255,0.7)' }], - global: false // 缺省为 false + global: false }, } }, @@ -354,14 +354,16 @@ export default { symbolSize: function (val) { if (val[2] == 0) { return 0; - } - ; + }; return ((maxSize4Pin - minSize4Pin) / (max - min)) * val[2] + (maxSize4Pin - ((maxSize4Pin - minSize4Pin) / (max - min)) * max) * 1.2; }, data: convertData(data), zlevel: 1, }] }, + optionsStyle: {}, // 样式 + optionsData: {}, // 数据 + optionsCollapse: {}, // 图标属性 optionsSetup: {} } }, @@ -373,22 +375,25 @@ export default { height: this.optionsStyle.height + "px", left: this.optionsStyle.left + "px", top: this.optionsStyle.top + "px", - background: this.optionsSetup.background + background: this.optionsCollapse.background }; } }, watch: { value: { handler(val) { - this.optionsStyle = val.position; +/* this.optionsStyle = val.position; + this.optionsData = val.data; + this.optionsSetup = val.setup;*/ + this.optionsCollapse = val.setup; + this.editorOptions(); }, deep: true } }, - created() { - this.optionsStyle = this.value.position; - }, mounted() { + this.optionsStyle = this.value.position; + this.optionsCollapse = this.value.setup; }, methods: { // 修改图标options属性 @@ -415,16 +420,6 @@ export default { }; this.options.title = title; }, - setdata(outname, outvalue) { - const outdata = {} - for (var i = 0; i < outname.length; i++) { - outdata.push({ - name: outname[i], - value: outvalue[i] - }) - } - return outdata - }, //数据解析 setOptionsData() { const optionsData = this.optionsData; // 数据类型 静态 or 动态