From 5cac55161f8bbd7cdb86381ee37d48db6f3a5225 Mon Sep 17 00:00:00 2001
From: qianlishi <qianlishi@anji-plus.com>
Date: Fri, 13 Jan 2023 09:01:51 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=85=B3=E8=81=94?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../widget/bar/widgetBarCompareChart.vue      | 337 +++++++++--------
 .../widget/bar/widgetBarStackChart.vue        | 137 +++----
 .../bar/widgetGradientColorBarchart.vue       | 200 +++++-----
 .../barline/widgetBarLineStackChart.vue       | 217 ++++++-----
 .../widget/barline/widgetBarlinechart.vue     |   9 +
 .../widget/barline/widgetMoreBarLineChart.vue | 306 ++++++++-------
 .../decorate/widgetDecoratePieChart.vue       | 285 +++++++-------
 .../designer/widget/funnel/widgetFunnel.vue   |  88 +++--
 .../designer/widget/heatmap/widgetHeatmap.vue |  47 ++-
 .../widget/line/widgetLineCompareChart.vue    | 355 ++++++++++--------
 .../widget/line/widgetLineStackChart.vue      | 129 ++++---
 .../widget/map/widgetAirBubbleMap.vue         | 232 ++++++------
 .../designer/widget/map/widgetLineMap.vue     | 179 +++++----
 .../designer/widget/percent/widgetGauge.vue   | 114 +++---
 .../percent/widgetPiePercentageChart.vue      | 179 ++++-----
 .../widget/pie/widgetPieNightingaleRose.vue   |  55 +--
 .../designer/widget/pie/widgetPiechart.vue    |  61 +--
 .../designer/widget/radar/widgetRadar.vue     |  70 ++--
 .../designer/widget/widgetHref.vue            |  14 +-
 .../widget/wordcloud/widgetWordCloud.vue      |  76 ++--
 20 files changed, 1661 insertions(+), 1429 deletions(-)

diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarCompareChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarCompareChart.vue
index d4062b83..23d30277 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarCompareChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarCompareChart.vue
@@ -1,171 +1,181 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetBarCompareChart",
   //参考 https://www.makeapie.com/editor.html?c=xrJwcCF3NZ
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
       options: {
         title: {
           //text: '柱状对比图',
-          x: 'center',
+          x: "center",
           textStyle: {
-            color: '#ffffff',
+            color: "#ffffff",
           },
         },
         //边距
         grid: [
-          {//左
-            show: false,//边框线
-            left: '4%',
+          {
+            //左
+            show: false, //边框线
+            left: "4%",
             top: 60,
             bottom: 10,
             containLabel: true,
-            width: '40%'
+            width: "40%",
           },
-          {//中间字体位置
+          {
+            //中间字体位置
             show: false,
-            left: '50.5%',
+            left: "50.5%",
             top: 60,
             bottom: 25,
-            width: '0%'
+            width: "0%",
           },
-          {//右
+          {
+            //右
             show: false,
-            right: '4%',
+            right: "4%",
             top: 60,
             bottom: 10,
             containLabel: true,
-            width: '40%'
+            width: "40%",
           },
         ],
         //图例
         legend: {
           textStyle: {
-            color: '#fff',
-            textAlign: 'center'
+            color: "#fff",
+            textAlign: "center",
           },
           //itemGap:80,
           //itemWidth: 0
         },
         xAxis: [
-          {// 左
+          {
+            // 左
             splitNumber: 2,
             show: true,
-            type: 'value',
+            type: "value",
             inverse: true,
-            axisLine: {//底分割线
+            axisLine: {
+              //底分割线
               show: false,
             },
             axisTick: {
               show: false,
             },
-            position: 'bottom',
-            axisLabel: { // x轴
+            position: "bottom",
+            axisLabel: {
+              // x轴
               show: true,
               textStyle: {
-                color: '#ffffff',
-                fontSize: 12
-              }
+                color: "#ffffff",
+                fontSize: 12,
+              },
             },
-            splitLine: { // 竖分割线
+            splitLine: {
+              // 竖分割线
               show: true,
               lineStyle: {
-                color: '#57617f',
+                color: "#57617f",
                 width: 1,
-                type: 'solid'
-              }
-            }
+                type: "solid",
+              },
+            },
           },
           {
             gridIndex: 1,
             show: false,
           },
-          {// 右
+          {
+            // 右
             gridIndex: 2,
             show: true,
-            type: 'value',
+            type: "value",
             axisLine: {
               show: false,
             },
             axisTick: {
               show: false,
             },
-            position: 'bottom',
+            position: "bottom",
             axisLabel: {
               show: true,
               textStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
                 fontSize: 12,
               },
             },
             splitLine: {
               show: true,
               lineStyle: {
-                color: '#57617f',
+                color: "#57617f",
                 width: 1,
-                type: 'solid',
+                type: "solid",
               },
             },
           },
         ],
         yAxis: [
           {
-            type: 'category',
+            type: "category",
             inverse: true,
-            position: 'right',
+            position: "right",
             axisLine: {
               show: false,
             },
             axisTick: {
-              show: false
+              show: false,
             },
             axisLabel: {
               show: false,
             },
             data: [],
           },
-          {//处理轴数据
+          {
+            //处理轴数据
             gridIndex: 1,
-            type: 'category',
+            type: "category",
             inverse: true,
-            position: 'left',
+            position: "left",
             axisLine: {
-              show: false
+              show: false,
             },
             axisTick: {
-              show: false
+              show: false,
             },
             axisLabel: {
               show: true,
               textStyle: {
-                align: 'center',
-                color: '#ffffff',
+                align: "center",
+                color: "#ffffff",
                 fontSize: 14,
-              }
+              },
             },
             data: [],
           },
           {
             gridIndex: 2,
-            type: 'category',
+            type: "category",
             inverse: true,
-            position: 'left',
+            position: "left",
             axisLine: {
-              show: false
+              show: false,
             },
             axisTick: {
-              show: false
+              show: false,
             },
             axisLabel: {
               show: false,
@@ -174,19 +184,18 @@ export default {
         ],
         series: [
           {
-            name: '',
-            type: 'bar',
+            name: "",
+            type: "bar",
             barGap: 20,
             barWidth: 15,
             label: {
               normal: {
                 show: true,
-                color: 'red',
-                position: 'insideLeft',
+                color: "red",
+                position: "insideLeft",
                 textStyle: {
-                  color: '#ffffff',
-                }
-
+                  color: "#ffffff",
+                },
               },
               emphasis: {
                 show: false,
@@ -194,7 +203,7 @@ export default {
             },
             itemStyle: {
               normal: {
-                color: '#36c5e7',
+                color: "#36c5e7",
                 barBorderRadius: [8, 0, 0, 8],
               },
               emphasis: {
@@ -204,8 +213,8 @@ export default {
             data: [],
           },
           {
-            name: '',
-            type: 'bar',
+            name: "",
+            type: "bar",
             barGap: 20,
             barWidth: 15,
             xAxisIndex: 2,
@@ -213,16 +222,16 @@ export default {
             label: {
               normal: {
                 show: true,
-                color: 'red',
-                position: 'insideRight',
+                color: "red",
+                position: "insideRight",
                 textStyle: {
-                  color: '#ffffff',
-                }
+                  color: "#ffffff",
+                },
               },
             },
             itemStyle: {
               normal: {
-                color: '#e68b55',
+                color: "#e68b55",
                 barBorderRadius: [0, 8, 8, 0],
               },
               emphasis: {
@@ -231,12 +240,12 @@ export default {
             },
             data: [],
           },
-        ]
+        ],
       },
       optionsStyle: {},
       optionsData: {},
       optionsSetup: {},
-      flagInter: null
+      flagInter: null,
     };
   },
   computed: {
@@ -247,9 +256,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -260,8 +269,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -269,6 +278,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -311,8 +328,8 @@ export default {
       const optionsSetup = this.optionsSetup;
       const xAxisLeft = {
         splitNumber: optionsSetup.splitNumberLeft,
-        type: 'value',
-        show : optionsSetup.hideXLeft,
+        type: "value",
+        show: optionsSetup.hideXLeft,
         inverse: true,
         //X轴线
         axisLine: {
@@ -325,22 +342,24 @@ export default {
           show: optionsSetup.tickLineLeft,
         },
         position: optionsSetup.positionXLeft,
-        axisLabel: { // x轴
+        axisLabel: {
+          // x轴
           show: true,
           textStyle: {
             color: optionsSetup.colorXLeft,
-            fontSize: optionsSetup.fontSizeXLeft
-          }
+            fontSize: optionsSetup.fontSizeXLeft,
+          },
         },
-        splitLine: { // 分割线
+        splitLine: {
+          // 分割线
           show: optionsSetup.isShowSplitLineLeft,
           lineStyle: {
             color: optionsSetup.splitLineColorLeft,
             width: optionsSetup.splitLineFontWidthLeft,
-            type: 'solid'
-          }
-        }
-      }
+            type: "solid",
+          },
+        },
+      };
       this.options.xAxis[0] = xAxisLeft;
     },
     // 右X轴设置
@@ -349,9 +368,10 @@ export default {
       const xAxisRight = {
         gridIndex: 2,
         splitNumber: optionsSetup.splitNumberRight,
-        show : optionsSetup.hideXRight,
-        type: 'value',
-        axisLine: {//X轴线
+        show: optionsSetup.hideXRight,
+        type: "value",
+        axisLine: {
+          //X轴线
           show: optionsSetup.lineXRight,
           lineStyle: {
             color: optionsSetup.lineColorXRight,
@@ -361,22 +381,24 @@ export default {
           show: optionsSetup.tickLineRight,
         },
         position: optionsSetup.positionXRight,
-        axisLabel: { // x轴
+        axisLabel: {
+          // x轴
           show: true,
           textStyle: {
             color: optionsSetup.colorXRight,
-            fontSize: optionsSetup.fontSizeXRight
-          }
+            fontSize: optionsSetup.fontSizeXRight,
+          },
         },
-        splitLine: { // 分割线
+        splitLine: {
+          // 分割线
           show: optionsSetup.isShowSplitLineRight,
           lineStyle: {
             color: optionsSetup.splitLineColorRight,
             width: optionsSetup.splitLineFontWidthRight,
-            type: 'solid'
-          }
-        }
-      }
+            type: "solid",
+          },
+        },
+      };
       this.options.xAxis[2] = xAxisRight;
     },
     // Y轴设置
@@ -385,11 +407,11 @@ export default {
       const axisLine = {
         show: optionsSetup.lineY,
         lineStyle: {
-          color: optionsSetup.lineColorY
-        }
+          color: optionsSetup.lineColorY,
+        },
       };
       const axisTick = {
-        show: optionsSetup.tickLineY
+        show: optionsSetup.tickLineY,
       };
       const axisLabel = {
         show: optionsSetup.hideY,
@@ -397,11 +419,11 @@ export default {
           align: optionsSetup.textAlignY,
           color: optionsSetup.colorY,
           fontSize: optionsSetup.fontSizeY,
-        }
+        },
       };
-      this.options.yAxis[1]['axisLine'] = axisLine;
-      this.options.yAxis[1]['axisTick'] = axisTick;
-      this.options.yAxis[1]['axisLabel'] = axisLabel;
+      this.options.yAxis[1]["axisLine"] = axisLine;
+      this.options.yAxis[1]["axisTick"] = axisTick;
+      this.options.yAxis[1]["axisLabel"] = axisLabel;
     },
     // 数值设定、柱体设置
     setOptionsTop() {
@@ -409,36 +431,36 @@ export default {
       const series = this.options.series;
       for (const key in series) {
         if (series[key].type == "bar") {
-          series[0].label = {
+          (series[0].label = {
             normal: {
               show: optionsSetup.isShow,
-              position: 'insideLeft',
+              position: "insideLeft",
               textStyle: {
                 fontSize: optionsSetup.fontSize,
                 color: optionsSetup.subTextColor,
-                fontWeight: optionsSetup.fontWeight
-              }
+                fontWeight: optionsSetup.fontWeight,
+              },
             },
             emphasis: {
               show: false,
             },
-          },
-            series[1].label = {
+          }),
+            (series[1].label = {
               normal: {
                 show: optionsSetup.isShow,
-                color: 'red',
-                position: 'insideRight',
+                color: "red",
+                position: "insideRight",
                 textStyle: {
                   fontSize: optionsSetup.fontSize,
                   color: optionsSetup.subTextColor,
-                  fontWeight: optionsSetup.fontWeight
-                }
+                  fontWeight: optionsSetup.fontWeight,
+                },
               },
               emphasis: {
                 show: false,
               },
-            },
-            series[key].barWidth = optionsSetup.maxWidth;
+            }),
+            (series[key].barWidth = optionsSetup.maxWidth);
         }
       }
       this.options.series = series;
@@ -451,8 +473,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -460,7 +482,8 @@ export default {
     setOptionsGrid() {
       const optionsSetup = this.optionsSetup;
       const grid = [
-        {//左
+        {
+          //左
           show: optionsSetup.frameLineLeft,
           borderColor: optionsSetup.borderColorLeft,
           borderWidth: optionsSetup.borderWidthLeft,
@@ -468,16 +491,18 @@ export default {
           top: optionsSetup.marginTop,
           bottom: optionsSetup.marginBottom,
           containLabel: true,
-          width: '40%'
+          width: "40%",
         },
-        {//中间字体位置
+        {
+          //中间字体位置
           show: false,
           left: "51%",
           top: optionsSetup.marginTop,
           bottom: optionsSetup.marginBottom + 15,
-          width: '0%'
+          width: "0%",
         },
-        {//右
+        {
+          //右
           show: optionsSetup.frameLineRight,
           borderColor: optionsSetup.borderColorRight,
           borderWidth: optionsSetup.borderWidthRight,
@@ -485,9 +510,9 @@ export default {
           top: optionsSetup.marginTop,
           bottom: optionsSetup.marginBottom,
           containLabel: true,
-          width: '40%'
+          width: "40%",
         },
-      ]
+      ];
       this.options.grid = grid;
     },
     // 图例操作
@@ -497,32 +522,31 @@ export default {
       legend.show = optionsSetup.isShowLegend;
       legend.left = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
     // 图例名称设置
-    setOptionsLegendName(name){
+    setOptionsLegendName(name) {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[i].name = name[i];
         }
-        this.options.legend['data'] = name;
-      }else {
-        const arr = legendName.split('|');
+        this.options.legend["data"] = name;
+      } else {
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[i].name = arr[i];
         }
-        this.options.legend['data'] = arr
+        this.options.legend["data"] = arr;
       }
     },
     // 颜色修改、圆角修改
@@ -533,21 +557,21 @@ export default {
       const itemStyleLeft = {
         normal: {
           color: customColor[0].color,
-          barBorderRadius: [optionsSetup.radius, 0, 0, optionsSetup.radius]
+          barBorderRadius: [optionsSetup.radius, 0, 0, optionsSetup.radius],
         },
         emphasis: {
           show: false,
         },
-      }
+      };
       const itemStyleRight = {
         normal: {
           color: customColor[1].color,
-          barBorderRadius: [0, optionsSetup.radius, optionsSetup.radius, 0]
+          barBorderRadius: [0, optionsSetup.radius, optionsSetup.radius, 0],
         },
         emphasis: {
           show: false,
         },
-      }
+      };
       this.options.series[0].itemStyle = itemStyleLeft;
       this.options.series[1].itemStyle = itemStyleRight;
     },
@@ -558,16 +582,16 @@ export default {
       optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData, optionsSetup)
         : this.dynamicDataFn(
-        optionsData.dynamicData,
-        optionsData.refreshTime,
-        optionsSetup
-        );
+            optionsData.dynamicData,
+            optionsData.refreshTime,
+            optionsSetup
+          );
     },
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
@@ -598,15 +622,15 @@ export default {
         arrayList.push({
           name: yAxisList[i],
           data: data,
-        })
+        });
         legendName.push(yAxisList[i]);
       }
-      this.options.series[0]['name'] = arrayList[0].name;
-      this.options.series[0]['data'] = arrayList[0].data;
-      this.options.series[1]['name'] = arrayList[1].name;
-      this.options.series[1]['data'] = arrayList[1].data;
-      this.options.yAxis[1]['data'] = xAxisList;
-      this.options.legend['data'] = legendName;
+      this.options.series[0]["name"] = arrayList[0].name;
+      this.options.series[0]["data"] = arrayList[0].data;
+      this.options.series[1]["name"] = arrayList[1].name;
+      this.options.series[1]["data"] = arrayList[1].data;
+      this.options.yAxis[1]["data"] = xAxisList;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     // 动态数据
@@ -623,25 +647,25 @@ export default {
     },
     getEchartData(val, optionsSetup) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(optionsSetup, res);
       });
     },
     renderingFn(optionsSetup, val) {
       const legendName = [];
-      this.options.yAxis[1]['data'] = val.xAxis;
-      if (val.series[0].type == "bar"){
-        this.options.series[0]['name'] = val.series[0].name;
-        this.options.series[0]['data'] = val.series[0].data;
-        this.options.series[1]['name'] = val.series[1].name;
-        this.options.series[1]['data'] = val.series[1].data;
+      this.options.yAxis[1]["data"] = val.xAxis;
+      if (val.series[0].type == "bar") {
+        this.options.series[0]["name"] = val.series[0].name;
+        this.options.series[0]["data"] = val.series[0].data;
+        this.options.series[1]["name"] = val.series[1].name;
+        this.options.series[1]["data"] = val.series[1].data;
         legendName.push(val.series[0].name);
         legendName.push(val.series[1].name);
       }
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
-    }
-  }
+    },
+  },
 };
 </script>
 
@@ -651,5 +675,4 @@ export default {
   height: 100%;
   overflow: hidden;
 }
-
 </style>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarStackChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarStackChart.vue
index acf82a5b..e1c086b1 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarStackChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetBarStackChart.vue
@@ -1,16 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetBarStackchart",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -18,8 +19,8 @@ export default {
         grid: {},
         legend: {
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         xAxis: {
           type: "category",
@@ -27,9 +28,9 @@ export default {
           axisLabel: {
             show: true,
             textStyle: {
-              color: "#fff"
-            }
-          }
+              color: "#fff",
+            },
+          },
         },
         yAxis: {
           type: "value",
@@ -37,26 +38,26 @@ export default {
           axisLabel: {
             show: true,
             textStyle: {
-              color: "#fff"
-            }
-          }
+              color: "#fff",
+            },
+          },
         },
         series: [
           {
             data: [],
-            name: '',
+            name: "",
             type: "bar",
             barGap: "0%",
             itemStyle: {
-              barBorderRadius: null
-            }
-          }
-        ]
+              barBorderRadius: null,
+            },
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsSetup: {},
-      flagInter: null
+      flagInter: null,
     };
   },
   computed: {
@@ -67,9 +68,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -80,8 +81,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -89,6 +90,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -134,7 +143,7 @@ export default {
         name: optionsSetup.nameX,
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
         // 轴反转
         inverse: optionsSetup.reversalX,
@@ -147,23 +156,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorX,
             width: optionsSetup.lineWidthX,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineX,
           lineStyle: {
             color: optionsSetup.splitLineColorX,
             width: optionsSetup.splitLineWidthX,
-          }
-        }
+          },
+        },
       };
       this.options.xAxis = xAxis;
     },
@@ -181,7 +190,7 @@ export default {
         name: optionsSetup.textNameY,
         nameTextStyle: {
           color: optionsSetup.nameColorY,
-          fontSize: optionsSetup.nameFontSizeY
+          fontSize: optionsSetup.nameFontSizeY,
         },
         // 轴反转
         inverse: optionsSetup.reversalY,
@@ -192,23 +201,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorY,
-            fontSize: optionsSetup.fontSizeY
-          }
+            fontSize: optionsSetup.fontSizeY,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorY,
             width: optionsSetup.lineWidthY,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineY,
           lineStyle: {
             color: optionsSetup.splitLineColorY,
             width: optionsSetup.splitLineWidthY,
-          }
-        }
+          },
+        },
       };
       this.options.yAxis = yAxis;
     },
@@ -220,8 +229,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -233,7 +242,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -244,32 +253,31 @@ export default {
       legend.show = optionsSetup.isShowLegend;
       legend.left = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
     // 图例名称设置
-    setOptionsLegendName(name){
+    setOptionsLegendName(name) {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[i].name = name[i];
         }
-        this.options.legend['data'] = name;
-      }else {
-        const arr = legendName.split('|');
+        this.options.legend["data"] = name;
+      } else {
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[i].name = arr[i];
         }
-        this.options.legend['data'] = arr
+        this.options.legend["data"] = arr;
       }
     },
     // 数据解析
@@ -280,27 +288,27 @@ export default {
       optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData, optionsSetup)
         : this.dynamicDataFn(
-          optionsData.dynamicData,
-          optionsData.refreshTime,
-          optionsSetup
-        );
+            optionsData.dynamicData,
+            optionsData.refreshTime,
+            optionsSetup
+          );
     },
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
     //获取堆叠样式
     getStackStyle() {
       const optionsSetup = this.optionsSetup;
-      let style = ""
+      let style = "";
       if (optionsSetup.stackStyle == "upDown") {
-        style = "total"
+        style = "total";
       }
-      return style
+      return style;
     },
     //静态数据
     staticDataFn(val) {
@@ -353,9 +361,9 @@ export default {
             normal: {
               color: arrColor[i],
               barBorderRadius: optionsSetup.radius,
-            }
-          }
-        })
+            },
+          },
+        });
         legendName.push(yAxisList[i]);
       }
       this.options.series = series;
@@ -370,7 +378,7 @@ export default {
         this.options.xAxis.type = "category";
         this.options.yAxis.type = "value";
       }
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     // 动态数据
@@ -387,7 +395,7 @@ export default {
     },
     getEchartData(val, optionsSetup) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(optionsSetup, res);
       });
     },
@@ -434,17 +442,17 @@ export default {
               normal: {
                 color: arrColor[i],
                 barBorderRadius: optionsSetup.radius,
-              }
-            }
-          })
+              },
+            },
+          });
         }
         legendName.push(val.series[i].name);
       }
       this.options.series = series;
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
-    }
-  }
+    },
+  },
 };
 </script>
 
@@ -454,5 +462,4 @@ export default {
   height: 100%;
   overflow: hidden;
 }
-
 </style>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetGradientColorBarchart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetGradientColorBarchart.vue
index bbd7e93b..441cbc3d 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetGradientColorBarchart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/bar/widgetGradientColorBarchart.vue
@@ -1,18 +1,18 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
 import echarts from "echarts";
-
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetGradientColorBarchart", //渐变色,参考https://www.makeapie.com/editor.html?c=x0oZWoncE
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -23,63 +23,63 @@ export default {
           y: "4%",
           textStyle: {
             color: "#fff",
-            fontSize: "22"
+            fontSize: "22",
           },
           subtextStyle: {
             color: "#90979c",
-            fontSize: "16"
-          }
+            fontSize: "16",
+          },
         },
         tooltip: {
           trigger: "axis",
           axisPointer: {
-            type: "shadow"
-          }
+            type: "shadow",
+          },
         },
         grid: {
           top: "15%",
           right: "3%",
           left: "5%",
-          bottom: "12%"
+          bottom: "12%",
         },
         legend: {
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         xAxis: {
           type: "category",
           data: [],
           axisLine: {
             lineStyle: {
-              color: "rgba(255,255,255,0.12)"
-            }
+              color: "rgba(255,255,255,0.12)",
+            },
           },
           axisLabel: {
             margin: 10,
             color: "#e2e9ff",
             textStyle: {
-              fontSize: 14
-            }
-          }
+              fontSize: 14,
+            },
+          },
         },
         yAxis: {
           name: "",
           axisLabel: {
             formatter: "{value}",
-            color: "#e2e9ff"
+            color: "#e2e9ff",
           },
           axisLine: {
             show: false,
             lineStyle: {
-              color: "rgba(255,255,255,0)"
-            }
+              color: "rgba(255,255,255,0)",
+            },
           },
           splitLine: {
             lineStyle: {
-              color: "rgba(255,255,255,0.12)"
-            }
-          }
+              color: "rgba(255,255,255,0.12)",
+            },
+          },
         },
         series: [
           {
@@ -88,23 +88,27 @@ export default {
             barWidth: "20px",
             itemStyle: {
               normal: {
-                color: new echarts.graphic.LinearGradient(0, 0, 0, 1,
+                color: new echarts.graphic.LinearGradient(
+                  0,
+                  0,
+                  0,
+                  1,
                   [
                     {
                       offset: 0,
-                      color: "rgba(0,244,255,1)" // 0% 处的颜色
+                      color: "rgba(0,244,255,1)", // 0% 处的颜色
                     },
                     {
                       offset: 1,
-                      color: "rgba(0,77,167,1)" // 100% 处的颜色
-                    }
+                      color: "rgba(0,77,167,1)", // 100% 处的颜色
+                    },
                   ],
                   false
                 ),
                 shadowColor: "rgba(0,160,221,1)",
                 //模糊细数
-                shadowBlur: 4
-              }
+                shadowBlur: 4,
+              },
             },
             label: {
               normal: {
@@ -116,17 +120,17 @@ export default {
                   a: {
                     fontSize: 15,
                     color: "#fff",
-                    align: "center"
-                  }
-                }
-              }
-            }
-          }
-        ]
+                    align: "center",
+                  },
+                },
+              },
+            },
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -137,9 +141,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -150,8 +154,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -159,6 +163,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -205,7 +217,7 @@ export default {
         name: optionsSetup.nameX,
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
         // 轴反转
         inverse: optionsSetup.reversalX,
@@ -218,23 +230,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorX,
             width: optionsSetup.lineWidthX,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineX,
           lineStyle: {
             color: optionsSetup.splitLineColorX,
             width: optionsSetup.splitLineWidthX,
-          }
-        }
+          },
+        },
       };
       this.options.xAxis = xAxis;
     },
@@ -252,7 +264,7 @@ export default {
         name: optionsSetup.textNameY,
         nameTextStyle: {
           color: optionsSetup.nameColorY,
-          fontSize: optionsSetup.nameFontSizeY
+          fontSize: optionsSetup.nameFontSizeY,
         },
         // 轴反转
         inverse: optionsSetup.reversalY,
@@ -263,23 +275,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorY,
-            fontSize: optionsSetup.fontSizeY
-          }
+            fontSize: optionsSetup.fontSizeY,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorY,
             width: optionsSetup.lineWidthY,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineY,
           lineStyle: {
             color: optionsSetup.splitLineColorY,
             width: optionsSetup.splitLineWidthY,
-          }
-        }
+          },
+        },
       };
       this.options.yAxis = yAxis;
     },
@@ -295,8 +307,8 @@ export default {
             distance: optionsSetup.distance,
             fontSize: optionsSetup.fontSize,
             color: optionsSetup.subTextColor,
-            fontWeight: optionsSetup.fontWeight
-          }
+            fontWeight: optionsSetup.fontWeight,
+          };
         } else {
           series[0].label = {
             show: optionsSetup.isShow,
@@ -304,8 +316,8 @@ export default {
             distance: optionsSetup.distance,
             fontSize: optionsSetup.fontSize,
             color: optionsSetup.subTextColor,
-            fontWeight: optionsSetup.fontWeight
-          }
+            fontWeight: optionsSetup.fontWeight,
+          };
         }
         series[0].barWidth = optionsSetup.maxWidth;
       }
@@ -318,8 +330,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -331,7 +343,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -339,43 +351,39 @@ export default {
     setOptionsColor() {
       const optionsSetup = this.optionsSetup;
       const itemStyle = this.options.series[0]["itemStyle"];
-      let normal = {}
+      let normal = {};
       if (optionsSetup.verticalShow) {
         normal = {
-          color: new echarts.graphic.LinearGradient(1, 0, 0, 0,
-            [
-              {
-                offset: 0,
-                color: optionsSetup.bar0color // 0% 处的颜色
-              },
-              {
-                offset: 1,
-                color: optionsSetup.bar100color // 100% 处的颜色
-              }
-            ],
-          ),
+          color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [
+            {
+              offset: 0,
+              color: optionsSetup.bar0color, // 0% 处的颜色
+            },
+            {
+              offset: 1,
+              color: optionsSetup.bar100color, // 100% 处的颜色
+            },
+          ]),
           barBorderRadius: optionsSetup.radius, //圆角
           shadowColor: optionsSetup.shadowColor, // 阴影颜色
-          shadowBlur: optionsSetup.shadowBlur //模糊系数
-        }
+          shadowBlur: optionsSetup.shadowBlur, //模糊系数
+        };
       } else {
         normal = {
-          color: new echarts.graphic.LinearGradient(0, 0, 0, 1,
-            [
-              {
-                offset: 0,
-                color: optionsSetup.bar0color // 0% 处的颜色
-              },
-              {
-                offset: 1,
-                color: optionsSetup.bar100color // 100% 处的颜色
-              }
-            ],
-          ),
+          color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+            {
+              offset: 0,
+              color: optionsSetup.bar0color, // 0% 处的颜色
+            },
+            {
+              offset: 1,
+              color: optionsSetup.bar100color, // 100% 处的颜色
+            },
+          ]),
           barBorderRadius: optionsSetup.radius, //圆角
           shadowColor: optionsSetup.shadowColor, // 阴影颜色
-          shadowBlur: optionsSetup.shadowBlur //模糊系数
-        }
+          shadowBlur: optionsSetup.shadowBlur, //模糊系数
+        };
       }
       itemStyle["normal"] = normal;
     },
@@ -386,10 +394,10 @@ export default {
       optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData)
         : this.dynamicDataFn(
-          optionsData.dynamicData,
-          optionsData.refreshTime,
-          optionsSetup
-        );
+            optionsData.dynamicData,
+            optionsData.refreshTime,
+            optionsSetup
+          );
     },
     // 静态数据
     staticDataFn(val) {
@@ -399,7 +407,7 @@ export default {
       let data = [];
       for (const i in val) {
         axis[i] = val[i].axis;
-        data[i] = val[i].data
+        data[i] = val[i].data;
       }
       // x轴
       if (optionsSetup.verticalShow) {
@@ -431,7 +439,7 @@ export default {
     },
     getEchartData(val, optionsSetup) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(optionsSetup, res);
       });
     },
@@ -456,8 +464,8 @@ export default {
           series[i].data = val.series[i].data;
         }
       }
-    }
-  }
+    },
+  },
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarLineStackChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarLineStackChart.vue
index 194800aa..e0e64a28 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarLineStackChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarLineStackChart.vue
@@ -1,16 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "widgetBarLineStackChart",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -18,8 +19,8 @@ export default {
         grid: {},
         legend: {
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         xAxis: {
           type: "category",
@@ -27,37 +28,37 @@ export default {
           axisLabel: {
             show: true,
             textStyle: {
-              color: "#fff"
-            }
-          }
+              color: "#fff",
+            },
+          },
         },
         yAxis: [
           {
-            type: 'value',
+            type: "value",
             axisLine: {
               show: true,
               lineStyle: {
-                color: '#cdd5e2'
-              }
+                color: "#cdd5e2",
+              },
             },
             splitLine: {
               show: false,
             },
             axisLabel: {
               textStyle: {
-                color: '#666666'
-              }
+                color: "#666666",
+              },
             },
           },
           {
-            type: 'value',
+            type: "value",
             nameTextStyle: {
-              color: '#666666'
+              color: "#666666",
             },
             axisLine: {
               lineStyle: {
-                color: '#cdd5e2'
-              }
+                color: "#cdd5e2",
+              },
             },
             splitLine: {
               show: false,
@@ -65,33 +66,33 @@ export default {
             axisLabel: {
               show: true,
               textStyle: {
-                color: '#666666'
-              }
-            }
-          }
+                color: "#666666",
+              },
+            },
+          },
         ],
         series: [
           {
             data: [],
-            name: '',
+            name: "",
             type: "bar",
             barGap: "0%",
             itemStyle: {
-              barBorderRadius: null
-            }
+              barBorderRadius: null,
+            },
           },
           {
             data: [],
-            name: '',
+            name: "",
             type: "line",
-            itemStyle: {}
-          }
-        ]
+            itemStyle: {},
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsSetup: {},
-      flagInter: null
+      flagInter: null,
     };
   },
   computed: {
@@ -102,9 +103,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -115,8 +116,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -124,6 +125,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -169,7 +178,7 @@ export default {
         name: optionsSetup.nameX,
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
         // 轴反转
         inverse: optionsSetup.reversalX,
@@ -182,23 +191,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorX,
             width: optionsSetup.lineWidthX,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineX,
           lineStyle: {
             color: optionsSetup.splitLineColorX,
             width: optionsSetup.splitLineWidthX,
-          }
-        }
+          },
+        },
       };
       this.options.xAxis = xAxis;
     },
@@ -217,7 +226,7 @@ export default {
           // 别名
           nameTextStyle: {
             color: optionsSetup.nameColorYLeft,
-            fontSize: optionsSetup.nameFontSizeYLeft
+            fontSize: optionsSetup.nameFontSizeYLeft,
           },
           axisLabel: {
             show: true,
@@ -226,10 +235,11 @@ export default {
             textStyle: {
               // 坐标文字颜色
               color: optionsSetup.colorYLeft,
-              fontSize: optionsSetup.fontSizeYLeft
-            }
+              fontSize: optionsSetup.fontSizeYLeft,
+            },
           },
-          axisTick: { // 刻度
+          axisTick: {
+            // 刻度
             show: optionsSetup.tickLineYLeft,
           },
           axisLine: {
@@ -237,15 +247,15 @@ export default {
             lineStyle: {
               color: optionsSetup.lineColorYLeft,
               width: optionsSetup.lineWidthYLeft,
-            }
+            },
           },
           splitLine: {
             show: optionsSetup.isShowSplitLineYLeft,
             lineStyle: {
               color: optionsSetup.splitLineColorYLeft,
               width: optionsSetup.splitLineFontWidthYLeft,
-            }
-          }
+            },
+          },
         },
         {
           type: "value",
@@ -258,7 +268,7 @@ export default {
           // 别名
           nameTextStyle: {
             color: optionsSetup.nameColorYRight,
-            fontSize: optionsSetup.nameFontSizeYRight
+            fontSize: optionsSetup.nameFontSizeYRight,
           },
           axisLabel: {
             show: true,
@@ -267,10 +277,11 @@ export default {
             textStyle: {
               // 坐标文字颜色
               color: optionsSetup.colorYRight,
-              fontSize: optionsSetup.fontSizeYRight
-            }
+              fontSize: optionsSetup.fontSizeYRight,
+            },
           },
-          axisTick: { // 刻度
+          axisTick: {
+            // 刻度
             show: optionsSetup.tickLineYRight,
           },
           axisLine: {
@@ -278,16 +289,16 @@ export default {
             lineStyle: {
               width: optionsSetup.lineWidthYRight,
               color: optionsSetup.lineColorYRight,
-            }
+            },
           },
           splitLine: {
             show: optionsSetup.isShowSplitLineYRight,
             lineStyle: {
               color: optionsSetup.splitLineColorYRight,
               width: optionsSetup.splitLineFontWidthYRight,
-            }
-          }
-        }
+            },
+          },
+        },
       ];
       this.options.yAxis = yAxis;
     },
@@ -299,8 +310,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -312,7 +323,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -323,12 +334,11 @@ export default {
       legend.show = optionsSetup.isShowLegend;
       legend.left = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
@@ -338,17 +348,17 @@ export default {
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[i].name = name[i];
         }
-        this.options.legend['data'] = name;
+        this.options.legend["data"] = name;
       } else {
-        const arr = legendName.split('|');
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[i].name = arr[i];
         }
-        this.options.legend['data'] = arr
+        this.options.legend["data"] = arr;
       }
     },
     // 数据解析
@@ -359,16 +369,16 @@ export default {
       optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData, optionsSetup)
         : this.dynamicDataFn(
-          optionsData.dynamicData,
-          optionsData.refreshTime,
-          optionsSetup
-        );
+            optionsData.dynamicData,
+            optionsData.refreshTime,
+            optionsSetup
+          );
     },
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
@@ -404,16 +414,21 @@ export default {
       yAxisList = this.setUnique(yAxisList);
       const legendName = yAxisList;
       for (let i = 0; i < yAxisList.length; i++) {
-        const bar = this.getStaticSeriesData(xAxisList, yAxisList[i], val, "bar");
+        const bar = this.getStaticSeriesData(
+          xAxisList,
+          yAxisList[i],
+          val,
+          "bar"
+        );
         series.push({
           name: yAxisList[i],
-          type: 'bar',
+          type: "bar",
           data: bar,
-          barGap: '0%',
+          barGap: "0%",
           barWidth: optionsSetup.maxWidth,
           label: {
             show: optionsSetup.isShowBar,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceBar,
             fontSize: optionsSetup.fontSizeBar,
             color: optionsSetup.subTextColorBar,
@@ -424,15 +439,20 @@ export default {
             normal: {
               color: arrColor[i],
               barBorderRadius: optionsSetup.radius,
-            }
-          }
-        })
+            },
+          },
+        });
       }
       for (let i = 0; i < yAxisList.length; i++) {
-        const line = this.getStaticSeriesData(xAxisList, yAxisList[i], val, "line");
+        const line = this.getStaticSeriesData(
+          xAxisList,
+          yAxisList[i],
+          val,
+          "line"
+        );
         series.push({
           name: yAxisList[i],
-          type: 'line',
+          type: "line",
           data: line,
           yAxisIndex: 1,
           symbol: optionsSetup.symbol,
@@ -442,7 +462,7 @@ export default {
           itemStyle: {
             normal: {
               color: arrColor[i],
-            }
+            },
           },
           // 线条
           lineStyle: {
@@ -451,20 +471,20 @@ export default {
           },
           label: {
             show: optionsSetup.isShowLine,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceLine,
             fontSize: optionsSetup.fontSizeLine,
             color: optionsSetup.subTextColorLine,
             fontWeight: optionsSetup.fontWeightLine,
           },
-        })
+        });
       }
       this.options.series = series;
       this.options.xAxis.data = xAxisList;
       this.options.yAxis.data = [];
       this.options.xAxis.type = "category";
       this.options.yAxis.type = "value";
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     // 动态数据
@@ -481,7 +501,7 @@ export default {
     },
     getEchartData(val, optionsSetup) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(optionsSetup, res);
       });
     },
@@ -506,13 +526,13 @@ export default {
         const bar = this.getDynamicSeriesData(legendName[i], val.series, "bar");
         series.push({
           name: legendName[i],
-          type: 'bar',
+          type: "bar",
           data: bar,
-          barGap: '0%',
+          barGap: "0%",
           barWidth: optionsSetup.maxWidth,
           label: {
             show: optionsSetup.isShowBar,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceBar,
             fontSize: optionsSetup.fontSizeBar,
             color: optionsSetup.subTextColorBar,
@@ -523,12 +543,16 @@ export default {
             normal: {
               color: arrColor[i],
               barBorderRadius: optionsSetup.radius,
-            }
-          }
-        })
+            },
+          },
+        });
       }
       for (let i = 0; i < legendName.length; i++) {
-        const line = this.getDynamicSeriesData(legendName[i], val.series, "line");
+        const line = this.getDynamicSeriesData(
+          legendName[i],
+          val.series,
+          "line"
+        );
         series.push({
           name: legendName[i],
           type: "line",
@@ -541,7 +565,7 @@ export default {
           itemStyle: {
             normal: {
               color: arrColor[i],
-            }
+            },
           },
           // 线条
           lineStyle: {
@@ -550,16 +574,16 @@ export default {
           },
           label: {
             show: optionsSetup.isShowLine,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceLine,
             fontSize: optionsSetup.fontSizeLine,
             color: optionsSetup.subTextColorLine,
             fontWeight: optionsSetup.fontWeightLine,
           },
-        })
+        });
       }
       this.options.series = series;
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     getDynamicSeriesData(legend, series, type) {
@@ -569,9 +593,9 @@ export default {
           data = series[i].data;
         }
       }
-      return data
+      return data;
     },
-  }
+  },
 };
 </script>
 
@@ -581,5 +605,4 @@ export default {
   height: 100%;
   overflow: hidden;
 }
-
 </style>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarlinechart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarlinechart.vue
index c6b3dc46..2dfbdf71 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarlinechart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetBarlinechart.vue
@@ -5,6 +5,7 @@
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetBarlinechart",
   components: {},
@@ -127,6 +128,14 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetMoreBarLineChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetMoreBarLineChart.vue
index 0123755f..bc1967ea 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetMoreBarLineChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/barline/widgetMoreBarLineChart.vue
@@ -1,79 +1,86 @@
 <template>
-  <div :style='styleObj'>
-    <v-chart :options='options' autoresize/>
+  <div :style="styleObj">
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
-
-import echarts from 'echarts';
-
+import echarts from "echarts";
+import { eventBusParams } from "@/utils/screen";
 export default {
-  name: 'widgetMoreBarLineChart',
+  name: "widgetMoreBarLineChart",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
       options: {
         tooltip: {
-          trigger: 'item',
+          trigger: "item",
           axisPointer: {
-            type: 'shadow'
-          }
+            type: "shadow",
+          },
         },
         grid: {
-          left: '2%',
-          right: '4%',
-          bottom: '14%',
-          top: '16%',
-          containLabel: true
+          left: "2%",
+          right: "4%",
+          bottom: "14%",
+          top: "16%",
+          containLabel: true,
         },
         legend: {},
         xAxis: {
-          type: 'category',
-          data: ['2012', '2013', '2014', '2015', '2016', '2017', '2018', '2019'],
+          type: "category",
+          data: [
+            "2012",
+            "2013",
+            "2014",
+            "2015",
+            "2016",
+            "2017",
+            "2018",
+            "2019",
+          ],
           axisLine: {
             lineStyle: {
-              color: '#cdd5e2'
-
-            }
+              color: "#cdd5e2",
+            },
           },
           axisLabel: {
             textStyle: {
-              color: '#666666'
-            }
+              color: "#666666",
+            },
           },
         },
         yAxis: [
           {
-            type: 'value',
+            type: "value",
             axisLine: {
               show: true,
               lineStyle: {
-                color: '#cdd5e2'
-              }
+                color: "#cdd5e2",
+              },
             },
             splitLine: {
               show: false,
             },
             axisLabel: {
               textStyle: {
-                color: '#666666'
-              }
+                color: "#666666",
+              },
             },
           },
           {
-            type: 'value',
+            type: "value",
             nameTextStyle: {
-              color: '#666666'
+              color: "#666666",
             },
             axisLine: {
               lineStyle: {
-                color: '#cdd5e2'
-              }
+                color: "#cdd5e2",
+              },
             },
             splitLine: {
               show: false,
@@ -81,53 +88,58 @@ export default {
             axisLabel: {
               show: true,
               textStyle: {
-                color: '#666666'
-              }
-            }
-          }
+                color: "#666666",
+              },
+            },
+          },
         ],
         series: [
           {
-            name: '调解成功',
-            type: 'bar',
+            name: "调解成功",
+            type: "bar",
             itemStyle: {
               normal: {
-                color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                  offset: 0,
-                  color: '#29acff'
-                }, {
-                  offset: 1,
-                  color: '#4bdfff'
-                }]),
+                color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+                  {
+                    offset: 0,
+                    color: "#29acff",
+                  },
+                  {
+                    offset: 1,
+                    color: "#4bdfff",
+                  },
+                ]),
                 barBorderRadius: 6,
               },
             },
-            data: []
+            data: [],
           },
           {
-            name: '调解失败',
-            type: 'bar',
+            name: "调解失败",
+            type: "bar",
             itemStyle: {
               normal: {
-                color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                  offset: 0,
-                  color: '#3d93f2'
-                }, {
-                  offset: 1,
-                  color: '#5dc1fd'
-                }]),
+                color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+                  {
+                    offset: 0,
+                    color: "#3d93f2",
+                  },
+                  {
+                    offset: 1,
+                    color: "#5dc1fd",
+                  },
+                ]),
                 barBorderRadius: 6,
-              }
-
+              },
             },
-            data: []
+            data: [],
           },
           {
-            name: '调解成功率',
-            type: 'line',
+            name: "调解成功率",
+            type: "line",
             yAxisIndex: 1, //使用的 y 轴的 index,在单个图表实例中存在多个 y轴的时候有用
             smooth: false, //平滑曲线显示
-            symbol: 'circle', //标记的图形为实心圆
+            symbol: "circle", //标记的图形为实心圆
             symbolSize: 8, //标记的大小
             /*itemStyle: {
               normal: {
@@ -137,25 +149,25 @@ export default {
               },
             },*/
             lineStyle: {
-              color: '#ffa43a'
+              color: "#ffa43a",
             },
-            data: []
-          }
-        ]
-      }
-    }
+            data: [],
+          },
+        ],
+      },
+    };
   },
   computed: {
     styleObj() {
       return {
-        position: this.ispreview ? 'absolute' : 'static',
-        width: this.optionsStyle.width + 'px',
-        height: this.optionsStyle.height + 'px',
-        left: this.optionsStyle.left + 'px',
-        top: this.optionsStyle.top + 'px',
-        background: this.optionsSetup.background
+        position: this.ispreview ? "absolute" : "static",
+        width: this.optionsStyle.width + "px",
+        height: this.optionsStyle.height + "px",
+        left: this.optionsStyle.left + "px",
+        top: this.optionsStyle.top + "px",
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -166,8 +178,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   created() {
     this.optionsStyle = this.value.position;
@@ -175,6 +187,14 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -220,7 +240,7 @@ export default {
         name: optionsSetup.nameX,
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
         // 轴反转
         inverse: optionsSetup.reversalX,
@@ -233,23 +253,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorX,
             width: optionsSetup.lineWidthX,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineX,
           lineStyle: {
             color: optionsSetup.splitLineColorX,
             width: optionsSetup.splitLineWidthX,
-          }
-        }
+          },
+        },
       };
       this.options.xAxis = xAxis;
     },
@@ -268,7 +288,7 @@ export default {
           // 别名
           nameTextStyle: {
             color: optionsSetup.nameColorYLeft,
-            fontSize: optionsSetup.nameFontSizeYLeft
+            fontSize: optionsSetup.nameFontSizeYLeft,
           },
           axisLabel: {
             show: true,
@@ -277,26 +297,27 @@ export default {
             textStyle: {
               // 坐标文字颜色
               color: optionsSetup.colorYLeft,
-              fontSize: optionsSetup.fontSizeYLeft
-            }
+              fontSize: optionsSetup.fontSizeYLeft,
+            },
           },
-          axisTick: { // 刻度
+          axisTick: {
+            // 刻度
             show: optionsSetup.tickLineYLeft,
           },
           axisLine: {
             show: optionsSetup.lineYLeft,
             lineStyle: {
               width: optionsSetup.lineWidthYLeft,
-              color: optionsSetup.lineColorYLeft
-            }
+              color: optionsSetup.lineColorYLeft,
+            },
           },
           splitLine: {
             show: optionsSetup.isShowSplitLineYLeft,
             lineStyle: {
               color: optionsSetup.splitLineColorYLeft,
               width: optionsSetup.splitLineFontWidthYLeft,
-            }
-          }
+            },
+          },
         },
         {
           type: "value",
@@ -309,7 +330,7 @@ export default {
           // 别名
           nameTextStyle: {
             color: optionsSetup.nameColorYRight,
-            fontSize: optionsSetup.nameFontSizeYRight
+            fontSize: optionsSetup.nameFontSizeYRight,
           },
           axisLabel: {
             show: true,
@@ -318,10 +339,11 @@ export default {
             textStyle: {
               // 坐标文字颜色
               color: optionsSetup.colorYRight,
-              fontSize: optionsSetup.fontSizeYRight
-            }
+              fontSize: optionsSetup.fontSizeYRight,
+            },
           },
-          axisTick: { // 刻度
+          axisTick: {
+            // 刻度
             show: optionsSetup.tickLineYRight,
           },
           axisLine: {
@@ -329,16 +351,16 @@ export default {
             lineStyle: {
               width: optionsSetup.lineWidthYRight,
               color: optionsSetup.lineColorYRight,
-            }
+            },
           },
           splitLine: {
             show: optionsSetup.isShowSplitLineYRight,
             lineStyle: {
               color: optionsSetup.splitLineColorYRight,
               width: optionsSetup.splitLineFontWidthYRight,
-            }
-          }
-        }
+            },
+          },
+        },
       ];
       this.options.yAxis = yAxis;
     },
@@ -346,12 +368,12 @@ export default {
     setOptionsTooltip() {
       const optionsSetup = this.optionsSetup;
       const tooltip = {
-        trigger: 'item',
+        trigger: "item",
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -363,7 +385,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -373,12 +395,11 @@ export default {
       legend.show = optionsSetup.isShowLegend;
       legend.left = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
@@ -388,23 +409,23 @@ export default {
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[i].name = name[i];
         }
-        this.options.legend['data'] = name;
+        this.options.legend["data"] = name;
       } else {
-        const arr = legendName.split('|');
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[i].name = arr[i];
         }
-        this.options.legend['data'] = arr
+        this.options.legend["data"] = arr;
       }
     },
     // 数据处理
     setOptionsData() {
       const optionsData = this.optionsData; // 数据类型 静态 or 动态
-      optionsData.dataType == 'staticData'
+      optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData)
         : this.dynamicDataFn(optionsData.dynamicData, optionsData.refreshTime);
     },
@@ -428,30 +449,30 @@ export default {
         line[i] = val[i].sales;
       }
       const legendName = [];
-      legendName.push('调解成功');
-      legendName.push('调解失败');
-      legendName.push('调解成功率');
+      legendName.push("调解成功");
+      legendName.push("调解失败");
+      legendName.push("调解成功率");
       // x轴
       this.options.xAxis.data = axis;
       // series
       for (const i in series) {
-        if (series[i].type == 'bar') {
+        if (series[i].type == "bar") {
           series[i].name = legendName[i];
-          series[i].type = 'bar';
+          series[i].type = "bar";
           series[i].label = {
             show: optionsSetup.isShowBar,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceBar,
             fontSize: optionsSetup.fontSizeBar,
             color: optionsSetup.subTextColorBar,
-            fontWeight: optionsSetup.fontWeightBar
+            fontWeight: optionsSetup.fontWeightBar,
           };
           series[i].barWidth = optionsSetup.maxWidth;
-          series[i].itemStyle.normal['barBorderRadius'] = optionsSetup.radius;
-          series[i].itemStyle.normal['color'] = arrColor[i];
-        } else if (series[i].type == 'line') {
+          series[i].itemStyle.normal["barBorderRadius"] = optionsSetup.radius;
+          series[i].itemStyle.normal["color"] = arrColor[i];
+        } else if (series[i].type == "line") {
           series[i].name = legendName[i];
-          series[i].type = 'line';
+          series[i].type = "line";
           series[i].yAxisIndex = 1;
           series[i].symbol = optionsSetup.symbol;
           series[i].showSymbol = optionsSetup.markPoint;
@@ -459,36 +480,36 @@ export default {
           series[i].smooth = optionsSetup.smoothCurve;
           if (optionsSetup.area) {
             series[i].areaStyle = {
-              opacity: optionsSetup.areaThickness / 100
+              opacity: optionsSetup.areaThickness / 100,
             };
           } else {
             series[i].areaStyle = {
-              opacity: 0
+              opacity: 0,
             };
           }
           series[i].itemStyle = {
             normal: {
               color: arrColor[i],
-            }
+            },
           };
           series[i].lineStyle = {
             color: arrColor[i],
-            width: optionsSetup.lineWidth
+            width: optionsSetup.lineWidth,
           };
           series[i].label = {
             show: optionsSetup.isShowLine,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceLine,
             fontSize: optionsSetup.fontSizeLine,
             color: optionsSetup.subTextColorLine,
-            fontWeight: optionsSetup.fontWeightLine
+            fontWeight: optionsSetup.fontWeightLine,
           };
         }
       }
       series[0].data = bar1;
       series[1].data = bar2;
       series[2].data = line;
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     dynamicDataFn(val, refreshTime) {
@@ -504,7 +525,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -522,27 +543,27 @@ export default {
       for (const i in val.series) {
         legendName.push(val.series[i].name);
         const obj = {};
-        if (val.series[i].type == 'bar') {
+        if (val.series[i].type == "bar") {
           obj.name = val.series[i].name;
           obj.type = val.series[i].type;
           obj.label = {
             show: optionsSetup.isShowBar,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceBar,
             fontSize: optionsSetup.fontSizeBar,
             color: optionsSetup.subTextColorBar,
-            fontWeight: optionsSetup.fontWeightBar
+            fontWeight: optionsSetup.fontWeightBar,
           };
           obj.barWidth = optionsSetup.maxWidth;
           obj.itemStyle = {
             normal: {
               color: arrColor[i],
               barBorderRadius: optionsSetup.radius,
-            }
+            },
           };
           obj.data = val.series[i].data;
           series.push(obj);
-        } else if (val.series[i].type == 'line') {
+        } else if (val.series[i].type == "line") {
           obj.name = val.series[i].name;
           obj.type = val.series[i].type;
           obj.yAxisIndex = 1;
@@ -552,41 +573,40 @@ export default {
           obj.smooth = optionsSetup.smoothCurve;
           if (optionsSetup.area) {
             obj.areaStyle = {
-              opacity: optionsSetup.areaThickness / 100
+              opacity: optionsSetup.areaThickness / 100,
             };
           } else {
             obj.areaStyle = {
-              opacity: 0
-            }
+              opacity: 0,
+            };
           }
           obj.itemStyle = {
             normal: {
               color: arrColor[i],
-            }
+            },
           };
           obj.lineStyle = {
             color: arrColor[i],
-            width: optionsSetup.lineWidth
+            width: optionsSetup.lineWidth,
           };
           obj.label = {
             show: optionsSetup.isShowLine,
-            position: 'top',
+            position: "top",
             distance: optionsSetup.distanceLine,
             fontSize: optionsSetup.fontSizeLine,
             color: optionsSetup.subTextColorLine,
-            fontWeight: optionsSetup.fontWeightLine
+            fontWeight: optionsSetup.fontWeightLine,
           };
           obj.data = val.series[i].data;
           series.push(obj);
         }
       }
       this.options.series = series;
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
-  }
+  },
 };
-
 </script>
 
 <style scoped lang='scss'>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/decorate/widgetDecoratePieChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/decorate/widgetDecoratePieChart.vue
index 58224866..89777dc0 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/decorate/widgetDecoratePieChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/decorate/widgetDecoratePieChart.vue
@@ -1,17 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
-
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "widgetRotatePieChart",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -19,112 +19,112 @@ export default {
         title: {},
         series: [
           {
-            name: '最外环',
-            type: 'pie',
+            name: "最外环",
+            type: "pie",
             silent: true,
-            radius: ['98%', '97%'],
+            radius: ["98%", "97%"],
             label: {
               normal: {
-                show: false
+                show: false,
               },
             },
             labelLine: {
               normal: {
-                show: false
-              }
+                show: false,
+              },
             },
             itemStyle: {
               normal: {
                 show: false,
               },
             },
-            data: [0]
+            data: [0],
           },
           {
-            name: '外四环',
-            type: 'pie',
+            name: "外四环",
+            type: "pie",
             zlevel: 2,
             silent: true,
-            radius: ['90%', '91%'],
+            radius: ["90%", "91%"],
             startAngle: 50,
             hoverAnimation: false,
             label: {
               normal: {
-                show: false
+                show: false,
               },
             },
             labelLine: {
               normal: {
-                show: false
-              }
+                show: false,
+              },
             },
-            data: [0]
+            data: [0],
           },
           {
-            name: '里四环',
-            type: 'pie',
+            name: "里四环",
+            type: "pie",
             zlevel: 3,
             silent: true,
-            radius: ['88%', '87%'],
+            radius: ["88%", "87%"],
             label: {
               normal: {
-                show: false
+                show: false,
               },
             },
             labelLine: {
               normal: {
-                show: false
-              }
+                show: false,
+              },
             },
-            data: [0]
+            data: [0],
           },
           {
-            name: '虚线环',
-            type: 'pie',
+            name: "虚线环",
+            type: "pie",
             zlevel: 4,
             silent: true,
-            radius: ['84%', '83%'],
+            radius: ["84%", "83%"],
             label: {
               normal: {
-                show: false
+                show: false,
               },
             },
             labelLine: {
               normal: {
-                show: false
-              }
+                show: false,
+              },
             },
-            data: [0]
+            data: [0],
           },
           {
-            name: '三分环',
-            type: 'pie',
+            name: "三分环",
+            type: "pie",
             zlevel: 5,
             silent: true,
-            radius: ['80%', '78%'],
+            radius: ["80%", "78%"],
             color: ["#fc8d89", "#46d3f3", "rgba(203,203,203,.2)"],
             startAngle: 50,
             avoidLabelOverlap: false,
             hoverAnimation: false,
             label: {
               normal: {
-                show: false
+                show: false,
               },
             },
-            data: [50, 20, 40]
+            data: [50, 20, 40],
           },
           {
             name: "外指标环",
-            type: 'gauge',
+            type: "gauge",
             splitNumber: 30,
             min: 0,
             max: 100,
-            radius: '73%', //图表尺寸
-            center: ['50%', '50%'],
+            radius: "73%", //图表尺寸
+            center: ["50%", "50%"],
             startAngle: 90,
             endAngle: -269.9999,
             axisLabel: {
-              show: false
+              show: false,
             },
             pointer: {
               show: 0,
@@ -134,17 +134,17 @@ export default {
             },
           },
           {
-            name: '里指标环',
-            type: 'gauge',
+            name: "里指标环",
+            type: "gauge",
             splitNumber: 30,
             min: 0,
             max: 100,
-            radius: '68%',
-            center: ['50%', '50%'],
+            radius: "68%",
+            center: ["50%", "50%"],
             startAngle: 90,
             endAngle: -269.9999,
             axisLabel: {
-              show: false
+              show: false,
             },
             pointer: {
               show: 0,
@@ -154,64 +154,61 @@ export default {
             },
           },
           {
-            name: '环外环',
-            type: 'pie',
+            name: "环外环",
+            type: "pie",
             zlevel: 20,
             silent: true,
-            radius: ['60%', '59%'],
+            radius: ["60%", "59%"],
             hoverAnimation: false,
             label: {
               normal: {
-                show: false
+                show: false,
               },
             },
             labelLine: {
               normal: {
-                show: false
-              }
+                show: false,
+              },
             },
           },
           {
-            name: '中间环形图',
-            type: 'pie',
-            radius: ['40%', '55%'],
+            name: "中间环形图",
+            type: "pie",
+            radius: ["40%", "55%"],
             avoidLabelOverlap: false,
             hoverAnimation: false,
             itemStyle: {
               normal: {
-                color: '#80ADD2',
-                borderColor: '#3D4268',
-              }
+                color: "#80ADD2",
+                borderColor: "#3D4268",
+              },
             },
             label: {
               normal: {
                 show: false,
-                position: 'center',
-
+                position: "center",
               },
               emphasis: {
                 show: true,
                 textStyle: {
-                  fontSize: '30',
-                  fontWeight: 'bold'
-                }
-              }
+                  fontSize: "30",
+                  fontWeight: "bold",
+                },
+              },
             },
             labelLine: {
               normal: {
-                show: false
-              }
+                show: false,
+              },
             },
-            data: [
-              25, 25, 25, 25, 25, 25
-            ]
+            data: [25, 25, 25, 25, 25, 25],
           },
-        ]
+        ],
       },
       optionsStyle: {}, // 样式
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
-    }
+      optionsSetup: {},
+    };
   },
   computed: {
     styleObj() {
@@ -221,9 +218,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -234,8 +231,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -243,6 +240,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     editorOptions() {
@@ -257,20 +262,20 @@ export default {
     },
     // 颜色设置
     setColor(color) {
-      const nullColor = 'rgba(0,0,0,0)'
+      const nullColor = "rgba(0,0,0,0)";
       if (color == "") {
-        color = nullColor
+        color = nullColor;
       }
-      return color
+      return color;
     },
     // 最外外环1
     setOptionsLastRing() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[0];
       if (optionsSetup.isLastRingShow) {
-        series.data = [0]
+        series.data = [0];
       } else {
-        series.data = ''
+        series.data = "";
       }
       const normal = {
         color: {
@@ -286,7 +291,7 @@ export default {
           ],
         },
       };
-      series.itemStyle['normal'] = normal;
+      series.itemStyle["normal"] = normal;
     },
     setRingPie2() {
       const optionsSetup = this.optionsSetup;
@@ -300,23 +305,23 @@ export default {
               normal: {
                 color: this.setColor(optionsSetup.eightColor),
                 borderWidth: 0,
-                borderColor: 'rgba(0,0,0,0)'
-              }
-            }
-          })
+                borderColor: "rgba(0,0,0,0)",
+              },
+            },
+          });
         } else {
           dataArr.push({
             name: (i + 1).toString(),
             value: 20,
             itemStyle: {
               normal: {
-                color: 'rgba(0,0,0,0)'
-              }
-            }
-          })
+                color: "rgba(0,0,0,0)",
+              },
+            },
+          });
         }
       }
-      return dataArr
+      return dataArr;
     },
     // 八分环
     setOptionsEightRing() {
@@ -327,7 +332,7 @@ export default {
     setRingPie3() {
       const optionsSetup = this.optionsSetup;
       let dataArr = [];
-      for (let i = 0; i < (optionsSetup.dottedNum * 2); i++) {
+      for (let i = 0; i < optionsSetup.dottedNum * 2; i++) {
         if (i % 2 === 0) {
           dataArr.push({
             name: (i + 1).toString(),
@@ -336,34 +341,38 @@ export default {
               normal: {
                 color: this.setColor(optionsSetup.dottedColor),
                 borderWidth: 0,
-                borderColor: 'rgba(0,0,0,0)'
-              }
-            }
-          })
+                borderColor: "rgba(0,0,0,0)",
+              },
+            },
+          });
         } else {
           dataArr.push({
             name: (i + 1).toString(),
             value: 20,
             itemStyle: {
               normal: {
-                color: 'rgba(0,0,0,0)',
-              }
-            }
-          })
+                color: "rgba(0,0,0,0)",
+              },
+            },
+          });
         }
       }
-      return dataArr
+      return dataArr;
     },
     // 虚线环
     setOptionsDottedRing() {
       const series = this.options.series;
-      series[3].data = this.setRingPie3()
+      series[3].data = this.setRingPie3();
     },
     // 三分环
     setOptionsThreeRing() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[4];
-      series.color = [this.setColor(optionsSetup.three1Color), this.setColor(optionsSetup.three2Color), this.setColor(optionsSetup.three3Color)]
+      series.color = [
+        this.setColor(optionsSetup.three1Color),
+        this.setColor(optionsSetup.three2Color),
+        this.setColor(optionsSetup.three3Color),
+      ];
     },
     // 外指标环
     setOptionsOutRing() {
@@ -374,32 +383,30 @@ export default {
         lineStyle: {
           width: optionsSetup.outRingWidth,
           shadowBlur: 0,
-          color: [
-            [1, this.setColor(optionsSetup.outRingColor)]
-          ]
-        }
+          color: [[1, this.setColor(optionsSetup.outRingColor)]],
+        },
       };
       const axisTick = {
         show: optionsSetup.isOutTickShow,
         lineStyle: {
           color: this.setColor(optionsSetup.outTickColor),
-          width: optionsSetup.outTickWidth
+          width: optionsSetup.outTickWidth,
         },
         length: optionsSetup.outTickLength,
-        splitNumber: optionsSetup.outTickWidth
+        splitNumber: optionsSetup.outTickWidth,
       };
-      series[5].splitNumber = optionsSetup.outSplitNum
+      series[5].splitNumber = optionsSetup.outSplitNum;
       const splitLine = {
         show: optionsSetup.isOutSplitShow,
         length: optionsSetup.outSplitLength,
         lineStyle: {
           color: this.setColor(optionsSetup.outSplitColor),
           width: optionsSetup.outSplitWidth,
-        }
+        },
       };
-      series[5].axisLine = axisLine
-      series[5].axisTick = axisTick
-      series[5].splitLine = splitLine
+      series[5].axisLine = axisLine;
+      series[5].axisTick = axisTick;
+      series[5].splitLine = splitLine;
     },
     // 里指标环
     setOptionsInRing() {
@@ -410,9 +417,7 @@ export default {
         lineStyle: {
           width: optionsSetup.inRingWidth,
           shadowBlur: 0,
-          color: [
-            [1, this.setColor(optionsSetup.inRingColor)],
-          ],
+          color: [[1, this.setColor(optionsSetup.inRingColor)]],
         },
       };
       const axisTick = {
@@ -424,61 +429,61 @@ export default {
         length: optionsSetup.inTickLength,
         splitNumber: optionsSetup.inTickNum,
       };
-      series[6].splitNumber = optionsSetup.inSplitNum
+      series[6].splitNumber = optionsSetup.inSplitNum;
       const splitLine = {
         show: optionsSetup.isInSplitShow,
         length: optionsSetup.inSplitLength,
         lineStyle: {
           color: this.setColor(optionsSetup.inSplitColor),
-          width: optionsSetup.inSplitWidth
-        }
+          width: optionsSetup.inSplitWidth,
+        },
       };
-      series[6].axisLine = axisLine
-      series[6].axisTick = axisTick
-      series[6].splitLine = splitLine
+      series[6].axisLine = axisLine;
+      series[6].axisTick = axisTick;
+      series[6].splitLine = splitLine;
     },
     // 环外环设置
     setOptionsRingOnRing() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[7];
       if (optionsSetup.isRingOnRingShow) {
-        series.data = [0]
+        series.data = [0];
       } else {
-        series.data = ''
+        series.data = "";
       }
       const itemStyle = {
         normal: {
           color: this.setColor(optionsSetup.ringOnRingColor),
-        }
-      }
-      series.itemStyle = itemStyle
+        },
+      };
+      series.itemStyle = itemStyle;
     },
     // 中饼图设置
     setOptionsPie() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[8];
-      let width = optionsSetup.pieWidth
-      const pieWidth = width + "%"
-      series.radius = [pieWidth, '55%']
+      let width = optionsSetup.pieWidth;
+      const pieWidth = width + "%";
+      series.radius = [pieWidth, "55%"];
 
-      let pieBlocks = optionsSetup.pieBlocks
+      let pieBlocks = optionsSetup.pieBlocks;
       if (pieBlocks == "six") {
-        series.data = [25, 25, 25, 25, 25, 25]
+        series.data = [25, 25, 25, 25, 25, 25];
       } else if (pieBlocks == "five") {
-        series.data = [30, 30, 30, 30, 30]
+        series.data = [30, 30, 30, 30, 30];
       } else {
-        series.data = [40, 40, 40, 40]
+        series.data = [40, 40, 40, 40];
       }
       const itemStyle = {
         normal: {
           color: this.setColor(optionsSetup.pieColor),
           borderColor: this.setColor(optionsSetup.pieBorderColor),
-        }
-      }
-      series.itemStyle = itemStyle
-    }
-  }
-}
+        },
+      };
+      series.itemStyle = itemStyle;
+    },
+  },
+};
 </script>
 
 <style scoped lang="scss">
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/funnel/widgetFunnel.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/funnel/widgetFunnel.vue
index 684e5f75..20507c0b 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/funnel/widgetFunnel.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/funnel/widgetFunnel.vue
@@ -1,16 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetFunnel",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -19,19 +20,19 @@ export default {
         title: {
           text: "",
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         tooltip: {
           trigger: "item",
-          formatter: "{a} <br/>{b} : {c}"
+          formatter: "{a} <br/>{b} : {c}",
         },
         legend: {
-          x: 'center',
-          y: '92%',
+          x: "center",
+          y: "92%",
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         series: [
           {
@@ -44,37 +45,37 @@ export default {
             label: {
               normal: {
                 show: true,
-                position: 'inside',
-                formatter: '{c}',
+                position: "inside",
+                formatter: "{c}",
                 textStyle: {
-                  color: '#fff',
+                  color: "#fff",
                   fontSize: 14,
-                }
+                },
               },
               emphasis: {
-                position: 'inside',
-                formatter: '{b}: {c}'
-              }
+                position: "inside",
+                formatter: "{b}: {c}",
+              },
             },
             itemStyle: {
               normal: {
                 opacity: 0.8,
-                borderColor: 'rgba(12, 13, 43, .9)',
+                borderColor: "rgba(12, 13, 43, .9)",
                 borderWidth: 1,
                 shadowBlur: 4,
                 shadowOffsetX: 0,
                 shadowOffsetY: 0,
-                shadowColor: 'rgba(0, 0, 0, .6)'
-              }
+                shadowColor: "rgba(0, 0, 0, .6)",
+              },
             },
-            data: []
-          }
-        ]
+            data: [],
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -85,9 +86,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -98,8 +99,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   created() {
     this.optionsStyle = this.value.position;
@@ -107,6 +108,14 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -134,15 +143,15 @@ export default {
       const optionsSetup = this.optionsSetup;
       const normal = {
         show: optionsSetup.isShow,
-        position: 'inside',
-        formatter: '{c}',
+        position: "inside",
+        formatter: "{c}",
         textStyle: {
           color: optionsSetup.color,
           fontSize: optionsSetup.fontSize,
           fontWeight: optionsSetup.fontWeight,
-        }
-      }
-      this.options.series[0].label['normal'] = normal;
+        },
+      };
+      this.options.series[0].label["normal"] = normal;
     },
     // 标题修改
     setOptionsTitle() {
@@ -174,8 +183,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -187,12 +196,11 @@ export default {
       legend.left = optionsSetup.lateralPosition;
       legend.right = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
@@ -235,7 +243,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -245,8 +253,8 @@ export default {
           this.options.series[key].data = val;
         }
       }
-    }
-  }
+    },
+  },
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/heatmap/widgetHeatmap.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/heatmap/widgetHeatmap.vue
index f3cb9f59..30e381b5 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/heatmap/widgetHeatmap.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/heatmap/widgetHeatmap.vue
@@ -1,10 +1,11 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "widgetHeatmap",
   components: {},
@@ -135,6 +136,14 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -180,7 +189,7 @@ export default {
         name: optionsSetup.nameX,
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
         // 轴反转
         inverse: optionsSetup.reversalX,
@@ -193,15 +202,15 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorX,
             width: optionsSetup.lineWidthX,
-          }
+          },
         },
       };
       this.options.xAxis = xAxis;
@@ -220,7 +229,7 @@ export default {
         name: optionsSetup.textNameY,
         nameTextStyle: {
           color: optionsSetup.nameColorY,
-          fontSize: optionsSetup.nameFontSizeY
+          fontSize: optionsSetup.nameFontSizeY,
         },
         // 轴反转
         inverse: optionsSetup.reversalY,
@@ -231,15 +240,15 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorY,
-            fontSize: optionsSetup.fontSizeY
-          }
+            fontSize: optionsSetup.fontSizeY,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorY,
             width: optionsSetup.lineWidthY,
-          }
+          },
         },
       };
       this.options.yAxis = yAxis;
@@ -252,9 +261,9 @@ export default {
         textStyle: {
           fontSize: optionsSetup.fontSize,
           color: optionsSetup.subTextColor,
-          fontWeight: optionsSetup.fontWeight
-        }
-      }
+          fontWeight: optionsSetup.fontWeight,
+        },
+      };
       this.options.series[0].label = lable;
     },
     // 边距设置
@@ -265,7 +274,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -279,7 +288,7 @@ export default {
         textStyle: {
           color: optionsSetup.tipsColor,
           fontSize: optionsSetup.tipsFontSize,
-        }
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -291,8 +300,8 @@ export default {
       visualMap.min = optionsSetup.dataMin;
       visualMap.max = optionsSetup.dataMax;
       visualMap.textStyle = {
-        fontSize : optionsSetup.legendFontSize,
-        color : optionsSetup.legendColor
+        fontSize: optionsSetup.legendFontSize,
+        color: optionsSetup.legendColor,
       };
       visualMap.inRange.color = optionsSetup.legendColorList.map((x) => {
         return x.color;
@@ -312,8 +321,8 @@ export default {
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
@@ -324,7 +333,7 @@ export default {
       for (const i in val) {
         xAxisList[i] = val[i].axis;
         yAxisList[i] = val[i].yaxis;
-        data[i] = [val[i].axis,val[i].yaxis,val[i].num]
+        data[i] = [val[i].axis, val[i].yaxis, val[i].num];
       }
       xAxisList = this.setUnique(xAxisList);
       yAxisList = this.setUnique(yAxisList);
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineCompareChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineCompareChart.vue
index 9d9f79b7..1a707da5 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineCompareChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineCompareChart.vue
@@ -1,17 +1,18 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetBarCompareChart",
   //参考 https://www.makeapie.com/editor.html?c=xOjLyozu2W
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -22,19 +23,19 @@ export default {
           },
         },
         title: {
-          x: 'center',
+          x: "center",
           textStyle: {
-            color: '#ffffff',
+            color: "#ffffff",
           },
         },
         tooltip: {
           show: true,
-          trigger: 'axis',
+          trigger: "axis",
           axisPointer: {
-            type: 'line',
+            type: "line",
             lineStyle: {
-              color: '#ffffff',
-              type: 'dashed',
+              color: "#ffffff",
+              type: "dashed",
             },
           },
           /*axisPointer: {
@@ -50,67 +51,76 @@ export default {
         },
         //边距
         grid: [
-          {// 上
+          {
+            // 上
             left: 30,
             right: 20,
-            top: '60px',
+            top: "60px",
             containLabel: true,
-            bottom: '50%',
+            bottom: "50%",
           },
-          { // 下
+          {
+            // 下
             left: 30,
             containLabel: true,
             right: 20,
-            top: '51%',
+            top: "51%",
           },
         ],
         //图例
         legend: {
           textStyle: {
-            color: '#fff',
-            textAlign: 'center'
+            color: "#fff",
+            textAlign: "center",
           },
           //itemGap:80,
           //itemWidth: 0
         },
         xAxis: [
-          {//
+          {
+            //
             gridIndex: 0,
             show: true,
-            type: 'category',
+            type: "category",
             boundaryGap: true, // 居中
-            axisLine: { //x轴线
+            axisLine: {
+              //x轴线
               show: true,
               lineStyle: {
-                color: '#ffffff',
-              }
+                color: "#ffffff",
+              },
             },
-            axisTick: { // 刻度
+            axisTick: {
+              // 刻度
               show: true,
             },
-            axisLabel: { // X轴数据
+            axisLabel: {
+              // X轴数据
               show: true,
               textStyle: {
                 interval: 0,
-                color: '#ffffff',
-                fontSize: 14
-              }
+                color: "#ffffff",
+                fontSize: 14,
+              },
             },
             data: [],
           },
-          {//
+          {
+            //
             gridIndex: 1,
             show: true,
-            type: 'category',
-            position: 'top',
+            type: "category",
+            position: "top",
             boundaryGap: true, // 居中
-            axisLine: { // x轴线
+            axisLine: {
+              // x轴线
               show: true,
               lineStyle: {
-                color: '#ffffff',
-              }
+                color: "#ffffff",
+              },
             },
-            axisTick: { // 刻度
+            axisTick: {
+              // 刻度
               show: true,
             },
             axisLabel: {
@@ -128,24 +138,25 @@ export default {
             axisLabel: {
               show: true,
               textStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
                 fontSize: 14,
               },
             },
-            axisLine: { // 轴线
+            axisLine: {
+              // 轴线
               show: true,
               lineStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
               },
             },
             splitLine: {
               show: false,
               lineStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
               },
             },
             axisPointer: {
-              snap: true
+              snap: true,
             },
           },
           {
@@ -155,84 +166,87 @@ export default {
             axisLabel: {
               show: true,
               textStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
                 fontSize: 14,
               },
             },
-            axisLine: { // 轴线
+            axisLine: {
+              // 轴线
               show: true,
               lineStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
               },
             },
             splitLine: {
               show: false,
               lineStyle: {
-                color: '#ffffff',
+                color: "#ffffff",
               },
             },
             axisPointer: {
-              snap: true
+              snap: true,
             },
           },
         ],
         series: [
           {
-            name: '',
-            type: 'line',
+            name: "",
+            type: "line",
             xAxisIndex: 0,
             yAxisIndex: 0,
-            showSymbol: true,// 标记点
-            symbol: 'circle',
+            showSymbol: true, // 标记点
+            symbol: "circle",
             symbolSize: 5,
             smooth: true, // 曲线,折线
             itemStyle: {
-              color: '#36c5e7',
+              color: "#36c5e7",
             },
             lineStyle: {
-              color: '#36c5e7',
+              color: "#36c5e7",
               width: 2,
             },
-            label: { // 数值
-              position: 'top',
+            label: {
+              // 数值
+              position: "top",
               distance: 10,
               show: true,
-              color: '#36c5e7',
+              color: "#36c5e7",
               fontSize: 14,
             },
             data: [],
           },
           {
-            name: '',
-            type: 'line',
+            name: "",
+            type: "line",
             xAxisIndex: 1,
             yAxisIndex: 1,
-            showSymbol: true,// 标记点
-            symbol: 'circle',
+            showSymbol: true, // 标记点
+            symbol: "circle",
             symbolSize: 5,
             smooth: true, // 曲线,折线
             itemStyle: {
-              color: '#e68b55',
+              color: "#e68b55",
             },
             lineStyle: {
-              color: '#e68b55',
+              color: "#e68b55",
               width: 2,
             },
-            label: {// 数值
-              position: 'bottom',
+            label: {
+              // 数值
+              position: "bottom",
               distance: 10,
               show: true,
-              color: '#e68b55',
+              color: "#e68b55",
               fontSize: 16,
             },
             data: [],
           },
-        ]
+        ],
       },
       optionsStyle: {},
       optionsData: {},
       optionsSetup: {},
-      flagInter: null
+      flagInter: null,
     };
   },
   computed: {
@@ -243,9 +257,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -256,8 +270,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -265,6 +279,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -311,48 +333,53 @@ export default {
         name: optionsSetup.nameX, // 坐标轴名称
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
-        type: 'category',
+        type: "category",
         boundaryGap: optionsSetup.boundaryX, // 值居中
-        axisLine: { //x轴线
+        axisLine: {
+          //x轴线
           show: optionsSetup.lineX,
           lineStyle: {
             color: optionsSetup.lineColorX,
-          }
+          },
         },
-        axisTick: { // 刻度
+        axisTick: {
+          // 刻度
           show: optionsSetup.tickLineX,
         },
-        axisLabel: { // X轴数据
+        axisLabel: {
+          // X轴数据
           show: true,
           interval: optionsSetup.splitNumberX,
           textStyle: {
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
-      }
+      };
       const xAxis1 = {
         gridIndex: 1,
         show: optionsSetup.isShowX,
-        type: 'category',
-        position: 'top',
+        type: "category",
+        position: "top",
         boundaryGap: optionsSetup.boundaryX, // 值居中
-        axisLine: { // x轴线
+        axisLine: {
+          // x轴线
           show: optionsSetup.lineX,
           lineStyle: {
             color: optionsSetup.lineColorX,
-          }
+          },
         },
-        axisTick: { // 刻度
+        axisTick: {
+          // 刻度
           show: optionsSetup.tickLineX,
         },
         axisLabel: {
           show: false,
           interval: optionsSetup.splitNumberX,
         },
-      }
+      };
       this.options.xAxis[0] = xAxis0;
       this.options.xAxis[1] = xAxis1;
     },
@@ -367,7 +394,7 @@ export default {
         name: optionsSetup.textNameY, // 坐标轴名称
         nameTextStyle: {
           color: optionsSetup.nameColorY,
-          fontSize: optionsSetup.nameFontSizeY
+          fontSize: optionsSetup.nameFontSizeY,
         },
         axisLabel: {
           show: true,
@@ -376,10 +403,12 @@ export default {
             fontSize: optionsSetup.fontSizeYTop,
           },
         },
-        axisTick: { // 刻度
+        axisTick: {
+          // 刻度
           show: optionsSetup.tickLineYTop,
         },
-        axisLine: { // 轴线
+        axisLine: {
+          // 轴线
           show: optionsSetup.lineYTop,
           lineStyle: {
             color: optionsSetup.lineColorYTop,
@@ -393,10 +422,10 @@ export default {
           },
         },
         axisPointer: {
-          snap: true
+          snap: true,
         },
-      }
-      this.options.yAxis[0] = yAxis
+      };
+      this.options.yAxis[0] = yAxis;
     },
     // 下Y轴设置
     setOptionsYBottom() {
@@ -409,7 +438,7 @@ export default {
         name: optionsSetup.textNameY, // 坐标轴名称
         nameTextStyle: {
           color: optionsSetup.nameColorY,
-          fontSize: optionsSetup.nameFontSizeY
+          fontSize: optionsSetup.nameFontSizeY,
         },
         inverse: true, // 翻转
         axisLabel: {
@@ -419,10 +448,12 @@ export default {
             fontSize: optionsSetup.fontSizeYBottom,
           },
         },
-        axisTick: { // 刻度
+        axisTick: {
+          // 刻度
           show: optionsSetup.tickLineYBottom,
         },
-        axisLine: { // 轴线
+        axisLine: {
+          // 轴线
           show: optionsSetup.lineYBottom,
           lineStyle: {
             color: optionsSetup.lineColorYBottom,
@@ -436,82 +467,82 @@ export default {
           },
         },
         axisPointer: {
-          snap: true
+          snap: true,
         },
-      }
-      this.options.yAxis[1] = yAxis
+      };
+      this.options.yAxis[1] = yAxis;
     },
     // 数值设定 折线设置
     setOptionsTop() {
       const optionsSetup = this.optionsSetup;
-      const series = this.options.series
+      const series = this.options.series;
       // 折线
       for (const key in series) {
-        series[key].symbol = optionsSetup.symbol
-        series[key].showSymbol = optionsSetup.markPoint
-        series[key].symbolSize = optionsSetup.pointSize
-        series[key].smooth = optionsSetup.smoothCurve
+        series[key].symbol = optionsSetup.symbol;
+        series[key].showSymbol = optionsSetup.markPoint;
+        series[key].symbolSize = optionsSetup.pointSize;
+        series[key].smooth = optionsSetup.smoothCurve;
         if (optionsSetup.area) {
           series[key].areaStyle = {
-            opacity: optionsSetup.areaThickness / 100
-          }
+            opacity: optionsSetup.areaThickness / 100,
+          };
         } else {
           series[key].areaStyle = {
-            opacity: 0
-          }
+            opacity: 0,
+          };
         }
       }
       // 数值
-      if (series[0].type == 'line') {
+      if (series[0].type == "line") {
         series[0].label = {
-          position: 'top',
+          position: "top",
           distance: 10,
           show: optionsSetup.isShow,
           color: optionsSetup.subTextColor,
           fontSize: optionsSetup.fontSize,
-          fontWeight: optionsSetup.fontWeight
-        }
+          fontWeight: optionsSetup.fontWeight,
+        };
         series[1].label = {
-          position: 'bottom',
+          position: "bottom",
           distance: 10,
           show: optionsSetup.isShow,
           color: optionsSetup.subTextColor,
           fontSize: optionsSetup.fontSize,
-          fontWeight: optionsSetup.fontWeight
-        }
+          fontWeight: optionsSetup.fontWeight,
+        };
       }
     },
     // tooltip 提示语设置
     setOptionsTooltip() {
       const optionsSetup = this.optionsSetup;
-      let tooltip = {}
+      let tooltip = {};
       if (optionsSetup.tipsType == "line") {
         tooltip = {
           show: optionsSetup.tipsShow,
-          trigger: 'axis',
+          trigger: "axis",
           axisPointer: {
             type: optionsSetup.tipsType,
             lineStyle: {
               color: optionsSetup.tipsColor,
-              type: 'dashed',
+              type: "dashed",
             },
           },
-        }
+        };
       } else {
         tooltip = {
           show: optionsSetup.tipsShow,
-          trigger: 'axis',
+          trigger: "axis",
           axisPointer: {
             type: optionsSetup.tipsType,
             lineStyle: {
               color: optionsSetup.tipsColor,
-              type: 'dashed',
+              type: "dashed",
             },
             crossStyle: {
               color: optionsSetup.tipsColor,
-            }
+            },
           },
-        }
+        };
       }
       this.options.tooltip = tooltip;
     },
@@ -519,21 +550,23 @@ export default {
     setOptionsGrid() {
       const optionsSetup = this.optionsSetup;
       const grid = [
-        {// 上
+        {
+          // 上
           left: optionsSetup.marginLeft,
           right: optionsSetup.marginRight,
           top: optionsSetup.marginTop,
           containLabel: true,
-          bottom: '50%',
+          bottom: "50%",
         },
-        { // 下
+        {
+          // 下
           left: optionsSetup.marginLeft,
           right: optionsSetup.marginRight,
           containLabel: true,
-          top: '51%',
+          top: "51%",
           bottom: optionsSetup.marginBottom,
         },
-      ]
+      ];
       this.options.grid = grid;
     },
     // 图例操作
@@ -543,39 +576,38 @@ export default {
       legend.show = optionsSetup.isShowLegend;
       legend.left = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
     // 图例名称设置
-    setOptionsLegendName(name){
+    setOptionsLegendName(name) {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[i].name = name[i];
         }
-        this.options.legend['data'] = name;
-      }else {
-        const arr = legendName.split('|');
+        this.options.legend["data"] = name;
+      } else {
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[i].name = arr[i];
         }
-        this.options.legend['data'] = arr
+        this.options.legend["data"] = arr;
       }
     },
     // 颜色修改、宽度修改
     setOptionsColor() {
       const optionsSetup = this.optionsSetup;
       const customColor = optionsSetup.customColor;
-      const series = this.options.series
+      const series = this.options.series;
       const arrColor = [];
       for (let i = 0; i < customColor.length; i++) {
         arrColor.push(customColor[i].color);
@@ -584,13 +616,13 @@ export default {
       for (const key in series) {
         const itemStyle = {
           color: arrColor[key],
-        }
+        };
         const lineStyle = {
           color: arrColor[key],
           width: optionsSetup.lineWidth,
-        }
-        this.options.series[key].itemStyle = itemStyle
-        this.options.series[key].lineStyle = lineStyle
+        };
+        this.options.series[key].itemStyle = itemStyle;
+        this.options.series[key].lineStyle = lineStyle;
       }
     },
     // 数据解析
@@ -600,16 +632,16 @@ export default {
       optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData, optionsSetup)
         : this.dynamicDataFn(
-        optionsData.dynamicData,
-        optionsData.refreshTime,
-        optionsSetup
-        );
+            optionsData.dynamicData,
+            optionsData.refreshTime,
+            optionsSetup
+          );
     },
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
@@ -639,17 +671,17 @@ export default {
         }
         arrayList.push({
           name: yAxisList[i],
-          data: data
-        })
+          data: data,
+        });
         legendName.push(yAxisList[i]);
       }
-      this.options.series[0]['name'] = arrayList[0].name;
-      this.options.series[0]['data'] = arrayList[0].data;
-      this.options.series[1]['name'] = arrayList[1].name;
-      this.options.series[1]['data'] = arrayList[1].data;
-      this.options.xAxis[0]['data'] = xAxisList;
-      this.options.xAxis[1]['data'] = xAxisList;
-      this.options.legend['data'] = legendName;
+      this.options.series[0]["name"] = arrayList[0].name;
+      this.options.series[0]["data"] = arrayList[0].data;
+      this.options.series[1]["name"] = arrayList[1].name;
+      this.options.series[1]["data"] = arrayList[1].data;
+      this.options.xAxis[0]["data"] = xAxisList;
+      this.options.xAxis[1]["data"] = xAxisList;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     // 动态数据
@@ -666,26 +698,26 @@ export default {
     },
     getEchartData(val, optionsSetup) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(optionsSetup, res);
       });
     },
     renderingFn(optionsSetup, val) {
       const legendName = [];
-      this.options.xAxis[0]['data'] = val.xAxis;
-      this.options.xAxis[1]['data'] = val.xAxis;
+      this.options.xAxis[0]["data"] = val.xAxis;
+      this.options.xAxis[1]["data"] = val.xAxis;
       if (val.series[0].type == "line") {
-        this.options.series[0]['name'] = val.series[0].name;
-        this.options.series[0]['data'] = val.series[0].data;
-        this.options.series[1]['name'] = val.series[1].name;
-        this.options.series[1]['data'] = val.series[1].data;
+        this.options.series[0]["name"] = val.series[0].name;
+        this.options.series[0]["data"] = val.series[0].data;
+        this.options.series[1]["name"] = val.series[1].name;
+        this.options.series[1]["data"] = val.series[1].data;
         legendName.push(val.series[0].name);
         legendName.push(val.series[1].name);
       }
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
-    }
-  }
+    },
+  },
 };
 </script>
 
@@ -695,5 +727,4 @@ export default {
   height: 100%;
   overflow: hidden;
 }
-
 </style>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineStackChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineStackChart.vue
index b57c6c20..b6e3a7a0 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineStackChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/line/widgetLineStackChart.vue
@@ -1,16 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetBarStackchart",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -18,8 +19,8 @@ export default {
         grid: {},
         legend: {
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         xAxis: {
           type: "category",
@@ -27,9 +28,9 @@ export default {
           axisLabel: {
             show: true,
             textStyle: {
-              color: "#fff"
-            }
-          }
+              color: "#fff",
+            },
+          },
         },
         yAxis: {
           type: "value",
@@ -37,26 +38,26 @@ export default {
           axisLabel: {
             show: true,
             textStyle: {
-              color: "#fff"
-            }
-          }
+              color: "#fff",
+            },
+          },
         },
         series: [
           {
             data: [],
-            name: '',
+            name: "",
             type: "line",
             barGap: "0%",
             itemStyle: {
-              barBorderRadius: null
-            }
-          }
-        ]
+              barBorderRadius: null,
+            },
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsSetup: {},
-      flagInter: null
+      flagInter: null,
     };
   },
   computed: {
@@ -67,9 +68,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -80,8 +81,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -89,6 +90,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -134,7 +143,7 @@ export default {
         name: optionsSetup.nameX,
         nameTextStyle: {
           color: optionsSetup.nameColorX,
-          fontSize: optionsSetup.nameFontSizeX
+          fontSize: optionsSetup.nameFontSizeX,
         },
         // 轴反转
         inverse: optionsSetup.reversalX,
@@ -147,23 +156,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorX,
-            fontSize: optionsSetup.fontSizeX
-          }
+            fontSize: optionsSetup.fontSizeX,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorX,
             width: optionsSetup.lineWidthX,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineX,
           lineStyle: {
             color: optionsSetup.splitLineColorX,
             width: optionsSetup.splitLineWidthX,
-          }
-        }
+          },
+        },
       };
       this.options.xAxis = xAxis;
     },
@@ -181,7 +190,7 @@ export default {
         name: optionsSetup.textNameY,
         nameTextStyle: {
           color: optionsSetup.nameColorY,
-          fontSize: optionsSetup.nameFontSizeY
+          fontSize: optionsSetup.nameFontSizeY,
         },
         // 轴反转
         inverse: optionsSetup.reversalY,
@@ -192,23 +201,23 @@ export default {
           textStyle: {
             // 坐标文字颜色
             color: optionsSetup.colorY,
-            fontSize: optionsSetup.fontSizeY
-          }
+            fontSize: optionsSetup.fontSizeY,
+          },
         },
         axisLine: {
           show: true,
           lineStyle: {
             color: optionsSetup.lineColorY,
             width: optionsSetup.lineWidthY,
-          }
+          },
         },
         splitLine: {
           show: optionsSetup.isShowSplitLineY,
           lineStyle: {
             color: optionsSetup.splitLineColorY,
             width: optionsSetup.splitLineWidthY,
-          }
-        }
+          },
+        },
       };
       this.options.yAxis = yAxis;
     },
@@ -218,14 +227,14 @@ export default {
       let areaStyle = [];
       if (optionsSetup.area) {
         areaStyle = {
-          opacity: optionsSetup.areaThickness / 100
-        }
+          opacity: optionsSetup.areaThickness / 100,
+        };
       } else {
         areaStyle = {
-          opacity: 0
-        }
+          opacity: 0,
+        };
       }
-      return areaStyle
+      return areaStyle;
     },
     // tooltip 提示语设置,鼠标放置显示
     setOptionsTooltip() {
@@ -235,8 +244,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -248,7 +257,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -259,12 +268,11 @@ export default {
       legend.show = optionsSetup.isShowLegend;
       legend.left = optionsSetup.lateralPosition;
       legend.top = optionsSetup.longitudinalPosition;
-      legend.bottom =
-        optionsSetup.longitudinalPosition;
+      legend.bottom = optionsSetup.longitudinalPosition;
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
@@ -274,17 +282,17 @@ export default {
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[i].name = name[i];
         }
-        this.options.legend['data'] = name;
+        this.options.legend["data"] = name;
       } else {
-        const arr = legendName.split('|');
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[i].name = arr[i];
         }
-        this.options.legend['data'] = arr
+        this.options.legend["data"] = arr;
       }
     },
     // 图例颜色修改
@@ -307,16 +315,16 @@ export default {
       optionsData.dataType == "staticData"
         ? this.staticDataFn(optionsData.staticData, optionsSetup)
         : this.dynamicDataFn(
-          optionsData.dynamicData,
-          optionsData.refreshTime,
-          optionsSetup
-        );
+            optionsData.dynamicData,
+            optionsData.refreshTime,
+            optionsSetup
+          );
     },
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
@@ -379,7 +387,7 @@ export default {
             color: optionsSetup.subTextColor,
             fontWeight: optionsSetup.fontWeight,
           },
-        })
+        });
         legendName.push(yAxisList[i]);
       }
       this.options.series = series;
@@ -394,7 +402,7 @@ export default {
         this.options.xAxis.type = "category";
         this.options.yAxis.type = "value";
       }
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     // 动态数据
@@ -411,7 +419,7 @@ export default {
     },
     getEchartData(val, optionsSetup) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(optionsSetup, res);
       });
     },
@@ -467,15 +475,15 @@ export default {
               color: optionsSetup.subTextColor,
               fontWeight: optionsSetup.fontWeight,
             },
-          })
+          });
         }
         legendName.push(val.series[i].name);
       }
       this.options.series = series;
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
-    }
-  }
+    },
+  },
 };
 </script>
 
@@ -485,5 +493,4 @@ export default {
   height: 100%;
   overflow: hidden;
 }
-
 </style>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetAirBubbleMap.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetAirBubbleMap.vue
index 1fcd4824..0c76c929 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetAirBubbleMap.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetAirBubbleMap.vue
@@ -41,159 +41,159 @@ let geoCoordMap = {
   广西壮族自治区: [108.479, 23.1152],
   海南省: [110.3893, 19.8516],
   上海市: [121.4648, 31.2891],
-  香港: [114.173355,22.320048],
-  澳门: [113.54909,22.198951]
+  香港: [114.173355, 22.320048],
+  澳门: [113.54909, 22.198951],
 };
 let data = [
   {
     name: "南海诸岛",
-    value: 1
+    value: 1,
   },
   {
     name: "北京",
-    value: 524
+    value: 524,
   },
   {
     name: "天津",
-    value: 14
+    value: 14,
   },
   {
     name: "上海",
-    value: 150
+    value: 150,
   },
   {
     name: "重庆",
-    value: 75
+    value: 75,
   },
   {
     name: "河北",
-    value: 13
+    value: 13,
   },
   {
     name: "河南",
-    value: 83
+    value: 83,
   },
   {
     name: "云南",
-    value: 11
+    value: 11,
   },
   {
     name: "辽宁",
-    value: 19
+    value: 19,
   },
   {
     name: "黑龙江",
-    value: 15
+    value: 15,
   },
   {
     name: "湖南",
-    value: 69
+    value: 69,
   },
   {
     name: "安徽",
-    value: 260
+    value: 260,
   },
   {
     name: "山东",
-    value: 39
+    value: 39,
   },
   {
     name: "新疆",
-    value: 4
+    value: 4,
   },
   {
     name: "江苏",
-    value: 31
+    value: 31,
   },
   {
     name: "浙江",
-    value: 104
+    value: 104,
   },
   {
     name: "江西",
-    value: 36
+    value: 36,
   },
   {
     name: "湖北",
-    value: 1052
+    value: 1052,
   },
   {
     name: "广西",
-    value: 33
+    value: 33,
   },
   {
     name: "甘肃",
-    value: 347
+    value: 347,
   },
   {
     name: "山西",
-    value: 8
+    value: 8,
   },
   {
     name: "内蒙古",
-    value: 157
+    value: 157,
   },
   {
     name: "陕西",
-    value: 22
+    value: 22,
   },
   {
     name: "吉林",
-    value: 4
+    value: 4,
   },
   {
     name: "福建",
-    value: 36
+    value: 36,
   },
   {
     name: "贵州",
-    value: 39
+    value: 39,
   },
   {
     name: "广东",
-    value: 996
+    value: 996,
   },
   {
     name: "青海",
-    value: 27
+    value: 27,
   },
   {
     name: "西藏",
-    value: 31
+    value: 31,
   },
   {
     name: "四川",
-    value: 46
+    value: 46,
   },
   {
     name: "宁夏",
-    value: 16
+    value: 16,
   },
   {
     name: "海南",
-    value: 22
+    value: 22,
   },
   {
     name: "台湾",
-    value: 6
+    value: 6,
   },
   {
     name: "香港",
-    value: 2
+    value: 2,
   },
   {
     name: "澳门",
-    value: 9
-  }
+    value: 9,
+  },
 ];
-let convertData = function(data) {
+let convertData = function (data) {
   let res = [];
   for (let i = 0; i < data.length; i++) {
     let geoCoord = geoCoordMap[data[i].name];
     if (geoCoord) {
       res.push({
         name: data[i].name,
-        value: geoCoord.concat(data[i].value)
+        value: geoCoord.concat(data[i].value),
       });
     }
   }
@@ -203,26 +203,26 @@ let max = 6000,
   min = 10;
 let maxSize4Pin = 100,
   minSize4Pin = 20;
-
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "widgetAirBubbleMap",
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
       options: {
         //backgroundColor: '#0F1C3C',
         tooltip: {
-          trigger: 'item',
+          trigger: "item",
           formatter: function (params) {
-            if (params.value.length >1 ) {
+            if (params.value.length > 1) {
               return params.data.name + "" + params.data.value[2];
             } else {
               return params.name;
             }
-          }
+          },
         },
         geo: {
           map: "china",
@@ -230,8 +230,8 @@ export default {
           roam: false,
           label: {
             emphasis: {
-              show: false
-            }
+              show: false,
+            },
           },
           layoutSize: "80%",
           itemStyle: {
@@ -244,21 +244,21 @@ export default {
                 [
                   {
                     offset: 0,
-                    color: "#00F6FF"
+                    color: "#00F6FF",
                   },
                   {
                     offset: 1,
-                    color: "#53D9FF"
-                  }
+                    color: "#53D9FF",
+                  },
                 ],
                 false
               ),
               borderWidth: 3,
               shadowColor: "rgba(10,76,139,1)",
               shadowOffsetY: 0,
-              shadowBlur: 60
-            }
-          }
+              shadowBlur: 60,
+            },
+          },
         },
         series: [
           {
@@ -271,11 +271,11 @@ export default {
                 position: "right",
                 show: true,
                 color: "#53D9FF",
-                fontSize: 20
+                fontSize: 20,
               },
               emphasis: {
-                show: true
-              }
+                show: true,
+              },
             },
             itemStyle: {
               normal: {
@@ -288,16 +288,16 @@ export default {
                   colorStops: [
                     {
                       offset: 0,
-                      color: "#073684" // 0% 处的颜色
+                      color: "#073684", // 0% 处的颜色
                     },
                     {
                       offset: 1,
-                      color: "#061E3D" // 100% 处的颜色
-                    }
-                  ]
+                      color: "#061E3D", // 100% 处的颜色
+                    },
+                  ],
                 },
                 borderColor: "#215495",
-                borderWidth: 1
+                borderWidth: 1,
               },
               //鼠标放置颜色加深
               emphasis: {
@@ -309,23 +309,23 @@ export default {
                   colorStops: [
                     {
                       offset: 0,
-                      color: "#073684" // 0% 处的颜色
+                      color: "#073684", // 0% 处的颜色
                     },
                     {
                       offset: 1,
-                      color: "#2B91B7" // 100% 处的颜色
-                    }
-                  ]
-                }
-              }
+                      color: "#2B91B7", // 100% 处的颜色
+                    },
+                  ],
+                },
+              },
             },
-            data: data
+            data: data,
           },
           {
             type: "effectScatter",
             coordinateSystem: "geo",
             rippleEffect: {
-              brushType: "stroke"
+              brushType: "stroke",
             },
             showEffectOn: "render",
             itemStyle: {
@@ -339,20 +339,20 @@ export default {
                   colorStops: [
                     {
                       offset: 0,
-                      color: "rgba(5,80,151,0.2)"
+                      color: "rgba(5,80,151,0.2)",
                     },
                     {
                       offset: 0.8,
-                      color: "rgba(5,80,151,0.8)"
+                      color: "rgba(5,80,151,0.8)",
                     },
                     {
                       offset: 1,
-                      color: "rgba(0,108,255,0.7)"
-                    }
+                      color: "rgba(0,108,255,0.7)",
+                    },
                   ],
-                  global: false
-                }
-              }
+                  global: false,
+                },
+              },
             },
             label: {
               normal: {
@@ -360,19 +360,19 @@ export default {
                 color: "#fff",
                 fontWeight: "bold",
                 position: "inside",
-                formatter: function(para) {
+                formatter: function (para) {
                   return "{cnNum|" + para.data.value[2] + "}";
                 },
                 rich: {
                   cnNum: {
                     fontSize: 13,
-                    color: "#D4EEFF"
-                  }
-                }
-              }
+                    color: "#D4EEFF",
+                  },
+                },
+              },
             },
             symbol: "circle",
-            symbolSize: function(val) {
+            symbolSize: function (val) {
               if (val[2] == 0) {
                 return 0;
               }
@@ -384,14 +384,14 @@ export default {
               );
             },
             data: convertData(data),
-            zlevel: 1
-          }
-        ]
+            zlevel: 1,
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -402,9 +402,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -415,8 +415,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -424,6 +424,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -465,7 +473,7 @@ export default {
         show: optionsSetup.isShowMap,
         color: optionsSetup.fontTextColor,
         fontSize: optionsSetup.fontTextSize,
-        fontWeight: optionsSetup.fontTextWeight
+        fontWeight: optionsSetup.fontTextWeight,
       };
       label["normal"] = normal;
     },
@@ -482,16 +490,16 @@ export default {
           colorStops: [
             {
               offset: 0,
-              color: optionsSetup.font0PreColor // 0% 处的颜色
+              color: optionsSetup.font0PreColor, // 0% 处的颜色
             },
             {
               offset: 1,
-              color: optionsSetup.font100PreColor // 100% 处的颜色
-            }
-          ]
+              color: optionsSetup.font100PreColor, // 100% 处的颜色
+            },
+          ],
         },
         borderColor: "#215495",
-        borderWidth: 1
+        borderWidth: 1,
       };
       //鼠标放置颜色加深
       const emphasis = {
@@ -503,14 +511,14 @@ export default {
           colorStops: [
             {
               offset: 0,
-              color: "#073684" // 0% 处的颜色
+              color: "#073684", // 0% 处的颜色
             },
             {
               offset: 1,
-              color: optionsSetup.fontHighlightColor // 100% 处的颜色
-            }
-          ]
-        }
+              color: optionsSetup.fontHighlightColor, // 100% 处的颜色
+            },
+          ],
+        },
       };
       itemStyle["normal"] = normal;
       itemStyle["emphasis"] = emphasis;
@@ -535,16 +543,16 @@ export default {
         color: "#fff",
         fontWeight: "bold",
         position: "inside",
-        formatter: function(para) {
+        formatter: function (para) {
           return "{cnNum|" + para.data.value[2] + "}";
         },
         rich: {
           cnNum: {
             fontSize: optionsSetup.fontDataSize,
             color: optionsSetup.fontDataColor,
-            fontWeight: optionsSetup.fontDataWeight
-          }
-        }
+            fontWeight: optionsSetup.fontDataWeight,
+          },
+        },
       };
       const data = convertData(val);
       this.options.series[1]["data"] = data;
@@ -563,7 +571,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -576,22 +584,22 @@ export default {
         color: "#fff",
         fontWeight: "bold",
         position: "inside",
-        formatter: function(para) {
+        formatter: function (para) {
           return "{cnNum|" + para.data.value[2] + "}";
         },
         rich: {
           cnNum: {
             fontSize: optionsSetup.fontDataSize,
             color: optionsSetup.fontDataColor,
-            fontWeight: optionsSetup.fontDataWeight
-          }
-        }
+            fontWeight: optionsSetup.fontDataWeight,
+          },
+        },
       };
       const data = convertData(val);
       this.options.series[1]["data"] = data;
       label["normal"] = normal;
-    }
-  }
+    },
+  },
 };
 </script>
 <style lang="scss" scoped>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetLineMap.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetLineMap.vue
index 67f2ec43..1a55d221 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetLineMap.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/map/widgetLineMap.vue
@@ -1,12 +1,13 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 <script>
+import { eventBusParams } from "@/utils/screen";
 import "echarts/map/js/china.js";
 import echarts from "echarts";
-import {conversionCity} from '@/utils/china';
+import { conversionCity } from "@/utils/china";
 /*let geoCoordMap = {
   上海市: [121.4648, 31.2891],
   东莞市: [113.8953, 22.901],
@@ -130,7 +131,7 @@ export default {
   name: "widgetLineMap",
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -138,38 +139,44 @@ export default {
         title: {
           left: "center",
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         tooltip: {
-          trigger: 'item',
+          trigger: "item",
           formatter: function (params, ticket, callback) {
             if (params.seriesType == "effectScatter") {
               return "线路:" + params.data.name + "" + params.data.value[2];
             } else if (params.seriesType == "lines") {
-              return params.data.fromName + ">" + params.data.toName + "<br />" + params.data.value;
+              return (
+                params.data.fromName +
+                ">" +
+                params.data.toName +
+                "<br />" +
+                params.data.value
+              );
             } else {
               return params.name;
             }
-          }
+          },
         },
         legend: {
           show: true,
-          orient: 'vertical',
-          top: 'bottom',
-          left: 'right',
+          orient: "vertical",
+          top: "bottom",
+          left: "right",
           textStyle: {
-            color: '#fff'
+            color: "#fff",
           },
-          selectedMode: 'multiple',
+          selectedMode: "multiple",
         },
         geo: {
           map: "china",
           label: {
             emphasis: {
               show: true,
-              color: "white"
-            }
+              color: "white",
+            },
           },
           roam: true,
           itemStyle: {
@@ -179,8 +186,8 @@ export default {
               borderWidth: 1,
             },
             emphasis: {
-              areaColor: "#2a333d"
-            }
+              areaColor: "#2a333d",
+            },
           },
         },
         series: [
@@ -193,97 +200,97 @@ export default {
               period: 6,
               trailLength: 0.7,
               color: "#fff",
-              symbolSize: 3
+              symbolSize: 3,
             },
             lineStyle: {
               normal: {
-                color: '#a6c84c',
+                color: "#a6c84c",
                 width: 0,
-                curveness: 0.2
-              }
+                curveness: 0.2,
+              },
             },
             data: [],
           },
           {
             type: "lines",
             zlevel: 2,
-            symbol: ['none', 'arrow'],
+            symbol: ["none", "arrow"],
             symbolSize: 10,
             effect: {
               show: true,
               period: 4,
               trailLength: 0,
-              symbol: 'arrow',
-              symbolSize: 5
+              symbol: "arrow",
+              symbolSize: 5,
             },
             lineStyle: {
               normal: {
                 // 颜色+ 线条
-                color: '#ffa022',
+                color: "#ffa022",
                 width: 1,
                 opacity: 0.4,
-                curveness: 0.2
-              }
+                curveness: 0.2,
+              },
             },
             data: [],
           },
           {
             // 起点
             //name: tempData[0],
-            type: 'effectScatter',
-            coordinateSystem: 'geo',
+            type: "effectScatter",
+            coordinateSystem: "geo",
             zlevel: 2,
             rippleEffect: {
-              brushType: 'stroke'
+              brushType: "stroke",
             },
             label: {
               normal: {
                 show: true,
-                position: 'right',
-                formatter: '{b}',
+                position: "right",
+                formatter: "{b}",
                 fontSize: 22,
-              }
+              },
             },
             // 点的大小
             symbolSize: 10,
             itemStyle: {
               normal: {
                 // 地图点颜色
-                color: '#46bee9'
-              }
+                color: "#46bee9",
+              },
             },
             data: [],
           },
           {
             // 终点
             //name: tempData[0],
-            type: 'effectScatter',
-            coordinateSystem: 'geo',
+            type: "effectScatter",
+            coordinateSystem: "geo",
             zlevel: 2,
             rippleEffect: {
-              brushType: 'stroke'
+              brushType: "stroke",
             },
             label: {
               normal: {
                 show: true,
-                position: 'right',
-                formatter: '{b}',
+                position: "right",
+                formatter: "{b}",
                 fontSize: 22,
-              }
+              },
             },
             // 点的大小
             symbolSize: 10,
             itemStyle: {
               normal: {
                 // 地图点颜色
-                color: '#46bee9'
-              }
+                color: "#46bee9",
+              },
             },
             data: [],
           },
-        ]
+        ],
       },
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -294,9 +301,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -306,8 +313,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   created() {
     this.optionsStyle = this.value.position;
@@ -316,6 +323,14 @@ export default {
   },
   mounted() {
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     convertData(data) {
@@ -326,14 +341,12 @@ export default {
         let targetCoord = geoCoordMap[dataItem.target];
         if (sourceCoord && targetCoord) {
           res.push({
-              fromName: dataItem.source,
-              toName: dataItem.target,
-              coords: [sourceCoord, targetCoord],
-              value: dataItem.value,
-            }
-          )
+            fromName: dataItem.source,
+            toName: dataItem.target,
+            coords: [sourceCoord, targetCoord],
+            value: dataItem.value,
+          });
         }
-        ;
       }
       return res;
     },
@@ -369,12 +382,12 @@ export default {
       this.options.title = title;
     },
     // 起点设置
-    setOptionsSource(){
+    setOptionsSource() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[2];
       const normal = {
         show: optionsSetup.isShowSource,
-        position: 'right',
+        position: "right",
         color: optionsSetup.sourceFontTextColor,
         fontSize: optionsSetup.sourceFontTextSize,
         fontWeight: optionsSetup.sourceFontTextWeight,
@@ -382,19 +395,19 @@ export default {
       const itemStyle = {
         normal: {
           color: optionsSetup.sourcePointColor,
-        }
+        },
       };
       series.symbolSize = optionsSetup.sourceSymbolSize;
       series.label.normal = normal;
       series.itemStyle = itemStyle;
     },
     // 终点设置
-    setOptionsTarget(){
+    setOptionsTarget() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[3];
       const normal = {
         show: optionsSetup.isShowTarget,
-        position: 'right',
+        position: "right",
         color: optionsSetup.targetFontTextColor,
         fontSize: optionsSetup.targetFontTextSize,
         fontWeight: optionsSetup.targetFontTextWeight,
@@ -402,14 +415,14 @@ export default {
       const itemStyle = {
         normal: {
           color: optionsSetup.targetPointColor,
-        }
+        },
       };
       series.symbolSize = optionsSetup.targetSymbolSize;
       series.label.normal = normal;
       series.itemStyle = itemStyle;
     },
     // 图标设置
-    setOptionsSymbol(){
+    setOptionsSymbol() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series[1];
       const effect = {
@@ -420,22 +433,22 @@ export default {
         symbolSize: optionsSetup.symbolSize,
         color: optionsSetup.symbolColor,
       };
-      series['effect'] = effect;
+      series["effect"] = effect;
     },
     setSymbol(optionsSetup) {
       let symbol;
-      if (optionsSetup.symbol == 'plane') {
+      if (optionsSetup.symbol == "plane") {
         symbol = planePath;
       } else {
         symbol = "arrow";
       }
       return symbol;
     },
-    setPeriod(optionsSetup){
+    setPeriod(optionsSetup) {
       let period;
-      if (optionsSetup.symbol == 'plane') {
+      if (optionsSetup.symbol == "plane") {
         period = optionsSetup.symbolPeriod - 1;
-      }else {
+      } else {
         period = optionsSetup.symbolPeriod;
       }
       return period;
@@ -450,10 +463,10 @@ export default {
           color: optionsSetup.lineColor,
           width: optionsSetup.lineWidth,
           opacity: 0.4,
-          curveness: 0.2
-        }
+          curveness: 0.2,
+        },
       };
-      series['lineStyle'] = lineStyle;
+      series["lineStyle"] = lineStyle;
     },
     // 地图颜色设置
     setOptionsColor() {
@@ -467,7 +480,7 @@ export default {
         emphasis: {
           // 地图块颜色
           areaColor: optionsSetup.highlightColor,
-        }
+        },
       };
       this.options.geo["itemStyle"] = itemStyle;
     },
@@ -486,16 +499,16 @@ export default {
         if (geoCoordMap[dataItem.source] && geoCoordMap[dataItem.target]) {
           return {
             name: dataItem.source,
-            value: geoCoordMap[dataItem.source].concat([dataItem.value])
-          }
+            value: geoCoordMap[dataItem.source].concat([dataItem.value]),
+          };
         }
       });
       series[3]["data"] = val.map(function (dataItem) {
         if (geoCoordMap[dataItem.source] && geoCoordMap[dataItem.target]) {
           return {
             name: dataItem.target,
-            value: geoCoordMap[dataItem.target].concat([dataItem.value])
-          }
+            value: geoCoordMap[dataItem.target].concat([dataItem.value]),
+          };
         }
       });
     },
@@ -512,7 +525,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -524,20 +537,20 @@ export default {
         if (geoCoordMap[dataItem.source] && geoCoordMap[dataItem.target]) {
           return {
             name: dataItem.source,
-            value: geoCoordMap[dataItem.source].concat([dataItem.value])
-          }
+            value: geoCoordMap[dataItem.source].concat([dataItem.value]),
+          };
         }
       });
       series[3]["data"] = val.map(function (dataItem) {
         if (geoCoordMap[dataItem.source] && geoCoordMap[dataItem.target]) {
           return {
             name: dataItem.target,
-            value: geoCoordMap[dataItem.target].concat([dataItem.value])
-          }
+            value: geoCoordMap[dataItem.target].concat([dataItem.value]),
+          };
         }
       });
-    }
-  }
+    },
+  },
 };
 </script>
 <style lang="scss" scoped>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetGauge.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetGauge.vue
index 74e07d31..7b7f18e3 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetGauge.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetGauge.vue
@@ -1,25 +1,25 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
 import echarts from "echarts";
-
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetGauge",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
       options: {
         series: [
           {
-            type: 'gauge',
+            type: "gauge",
             z: 100,
             axisLine: {
               lineStyle: {
@@ -30,15 +30,15 @@ export default {
                     new echarts.graphic.LinearGradient(0, 1, 1, 0, [
                       {
                         offset: 0,
-                        color: 'rgba(0, 237, 3,0.1)',
+                        color: "rgba(0, 237, 3,0.1)",
                       },
                       {
                         offset: 0.5,
-                        color: 'rgba(0, 237, 3,0.6)',
+                        color: "rgba(0, 237, 3,0.6)",
                       },
                       {
                         offset: 1,
-                        color: 'rgba(0, 237, 3,1)',
+                        color: "rgba(0, 237, 3,1)",
                       },
                     ]),
                   ],
@@ -47,15 +47,15 @@ export default {
                     new echarts.graphic.LinearGradient(0, 1, 1, 0, [
                       {
                         offset: 0,
-                        color: 'rgba(255, 184, 0,0.1)',
+                        color: "rgba(255, 184, 0,0.1)",
                       },
                       {
                         offset: 0.5,
-                        color: 'rgba(255, 184, 0,0.6)',
+                        color: "rgba(255, 184, 0,0.6)",
                       },
                       {
                         offset: 1,
-                        color: 'rgba(255, 184, 0,1)',
+                        color: "rgba(255, 184, 0,1)",
                       },
                     ]),
                   ],
@@ -64,15 +64,15 @@ export default {
                     new echarts.graphic.LinearGradient(0, 1, 1, 0, [
                       {
                         offset: 0,
-                        color: 'rgba(175, 36, 74,0.1)',
+                        color: "rgba(175, 36, 74,0.1)",
                       },
                       {
                         offset: 0.5,
-                        color: 'rgba(255, 36, 74,0.6)',
+                        color: "rgba(255, 36, 74,0.6)",
                       },
                       {
                         offset: 1,
-                        color: 'rgba(255, 36, 74,1)',
+                        color: "rgba(255, 36, 74,1)",
                       },
                     ]),
                   ],
@@ -81,7 +81,7 @@ export default {
             },
             pointer: {
               itemStyle: {
-                color: 'auto',
+                color: "auto",
               },
             },
             axisTick: {
@@ -89,7 +89,7 @@ export default {
               distance: 0,
               length: 10,
               lineStyle: {
-                color: 'auto',
+                color: "auto",
                 width: 2,
               },
             },
@@ -98,20 +98,20 @@ export default {
               distance: 0,
               length: 14,
               lineStyle: {
-                color: 'auto',
+                color: "auto",
                 width: 4,
               },
             },
             axisLabel: {
               show: true,
-              color: 'white',
+              color: "white",
               distance: 2,
               fontSize: 10,
             },
             detail: {
               valueAnimation: true,
-              formatter: '{value} %',
-              color: 'white',
+              formatter: "{value} %",
+              color: "white",
               fontSize: 18,
             },
             data: [
@@ -125,7 +125,7 @@ export default {
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -136,9 +136,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -149,8 +149,8 @@ export default {
         this.optionsSetup = val.setup; // 样式
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   created() {
     this.optionsStyle = this.value.position;
@@ -158,16 +158,24 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     editorOptions() {
-      this.setOptions()
-      this.setOptionsData()
+      this.setOptions();
+      this.setOptionsData();
     },
     setOptions() {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series;
-      if (series[0].type == 'gauge') {
+      if (series[0].type == "gauge") {
         const axisLine = {
           show: optionsSetup.ringShow,
           lineStyle: {
@@ -226,28 +234,28 @@ export default {
               ],
             ],
           },
-        }
+        };
         const axisTick = {
           show: optionsSetup.tickShow,
           distance: optionsSetup.tickDistance,
           length: optionsSetup.tickLength,
           lineStyle: {
-            color: 'auto',
+            color: "auto",
             width: optionsSetup.tickWidth,
           },
-        }
+        };
         const splitLine = {
           show: optionsSetup.splitShow,
           distance: optionsSetup.splitDistance,
           length: optionsSetup.splitLength,
           lineStyle: {
-            color: 'auto',
+            color: "auto",
             width: optionsSetup.splitWidth,
           },
-        }
-        series[0].axisLine = axisLine
-        series[0].axisTick = axisTick
-        series[0].splitLine = splitLine
+        };
+        series[0].axisLine = axisLine;
+        series[0].axisTick = axisTick;
+        series[0].splitLine = splitLine;
       }
     },
     setOptionsData() {
@@ -259,21 +267,21 @@ export default {
     staticDataFn(val) {
       const optionsSetup = this.optionsSetup;
       const series = this.options.series;
-      const num = val[0]['num'];
+      const num = val[0]["num"];
       const data = [
         {
-          value: num
-        }
-      ]
+          value: num,
+        },
+      ];
       const detail = {
         valueAnimation: true,
-        formatter: '{value} %',
+        formatter: "{value} %",
         color: optionsSetup.labelColor,
         fontSize: optionsSetup.labelFontSize,
         fontWeight: optionsSetup.labelFontWeight,
-      }
-      series[0].data = data
-      series[0].detail = detail
+      };
+      series[0].data = data;
+      series[0].detail = detail;
     },
     dynamicDataFn(val, refreshTime) {
       if (!val) return;
@@ -288,7 +296,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -297,20 +305,20 @@ export default {
       const series = this.options.series;
       const data = [
         {
-          value: val[0].value
-        }
-      ]
+          value: val[0].value,
+        },
+      ];
       const detail = {
         valueAnimation: true,
-        formatter: '{value} %',
+        formatter: "{value} %",
         color: optionsSetup.labelColor,
         fontSize: optionsSetup.labelFontSize,
         fontWeight: optionsSetup.labelFontWeight,
-      }
-      series[0].data = data
-      series[0].detail = detail
-    }
-  }
+      };
+      series[0].data = data;
+      series[0].detail = detail;
+    },
+  },
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetPiePercentageChart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetPiePercentageChart.vue
index a039607e..86463d26 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetPiePercentageChart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/percent/widgetPiePercentageChart.vue
@@ -5,13 +5,14 @@
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 let per = 60;
 export default {
   name: "widgetPiePercentageChart", //百分比图参考:https://www.makeapie.com/editor.html?c=xFkzKG-bpl
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -25,14 +26,14 @@ export default {
             rich: {
               nums: {
                 fontSize: 60,
-                color: "#29EEF3"
+                color: "#29EEF3",
               },
               percent: {
                 fontSize: 30,
-                color: "#29EEF3"
-              }
-            }
-          }
+                color: "#29EEF3",
+              },
+            },
+          },
         },
         legend: {
           type: "plain",
@@ -43,27 +44,27 @@ export default {
           data: [
             {
               name: "1",
-              icon: "circle"
+              icon: "circle",
             },
             {
               name: "2",
-              icon: "circle"
+              icon: "circle",
             },
             {
               name: "3",
-              icon: "circle"
+              icon: "circle",
             },
             {
               name: "4",
-              icon: "circle"
-            }
+              icon: "circle",
+            },
           ],
           textStyle: {
             color: "white",
             fontSize: 16,
-            padding: [10, 1, 10, 0]
+            padding: [10, 1, 10, 0],
           },
-          selectedMode: false
+          selectedMode: false,
         },
         series: [
           {
@@ -78,17 +79,17 @@ export default {
                   cy: api.getHeight() / 2,
                   r: (Math.min(api.getWidth(), api.getHeight()) / 2) * 0.6,
                   startAngle: ((0 + this.angle) * Math.PI) / 180,
-                  endAngle: ((90 + this.angle) * Math.PI) / 180
+                  endAngle: ((90 + this.angle) * Math.PI) / 180,
                 },
                 style: {
                   stroke: "#0CD3DB",
                   fill: "transparent",
-                  lineWidth: 1.5
+                  lineWidth: 1.5,
                 },
-                silent: true
+                silent: true,
               };
             },
-            data: [0]
+            data: [0],
           },
           {
             //name: '环2',
@@ -102,17 +103,17 @@ export default {
                   cy: api.getHeight() / 2,
                   r: (Math.min(api.getWidth(), api.getHeight()) / 2) * 0.6,
                   startAngle: ((180 + this.angle) * Math.PI) / 180,
-                  endAngle: ((270 + this.angle) * Math.PI) / 180
+                  endAngle: ((270 + this.angle) * Math.PI) / 180,
                 },
                 style: {
                   stroke: "#0CD3DB",
                   fill: "transparent",
-                  lineWidth: 1.5
+                  lineWidth: 1.5,
                 },
-                silent: true
+                silent: true,
               };
             },
-            data: [0]
+            data: [0],
           },
           {
             //name: '环3',
@@ -126,17 +127,17 @@ export default {
                   cy: api.getHeight() / 2,
                   r: (Math.min(api.getWidth(), api.getHeight()) / 2) * 0.65,
                   startAngle: ((270 + -this.angle) * Math.PI) / 180,
-                  endAngle: ((40 + -this.angle) * Math.PI) / 180
+                  endAngle: ((40 + -this.angle) * Math.PI) / 180,
                 },
                 style: {
                   stroke: "#0CD3DB",
                   fill: "transparent",
-                  lineWidth: 1.5
+                  lineWidth: 1.5,
                 },
-                silent: true
+                silent: true,
               };
             },
-            data: [0]
+            data: [0],
           },
           {
             //name: '环4',
@@ -150,17 +151,17 @@ export default {
                   cy: api.getHeight() / 2,
                   r: (Math.min(api.getWidth(), api.getHeight()) / 2) * 0.65,
                   startAngle: ((90 + -this.angle) * Math.PI) / 180,
-                  endAngle: ((220 + -this.angle) * Math.PI) / 180
+                  endAngle: ((220 + -this.angle) * Math.PI) / 180,
                 },
                 style: {
                   stroke: "#0CD3DB",
                   fill: "transparent",
-                  lineWidth: 1.5
+                  lineWidth: 1.5,
                 },
-                silent: true
+                silent: true,
               };
             },
-            data: [0]
+            data: [0],
           },
           {
             //name: '绿点1',
@@ -176,16 +177,16 @@ export default {
                 shape: {
                   cx: point.x,
                   cy: point.y,
-                  r: 4
+                  r: 4,
                 },
                 style: {
                   stroke: "#0CD3DB", //粉
-                  fill: "#0CD3DB"
+                  fill: "#0CD3DB",
                 },
-                silent: true
+                silent: true,
               };
             },
-            data: [0]
+            data: [0],
           },
           {
             //name: '绿点2',
@@ -201,16 +202,16 @@ export default {
                 shape: {
                   cx: point.x,
                   cy: point.y,
-                  r: 4
+                  r: 4,
                 },
                 style: {
                   stroke: "#0CD3DB", //绿
-                  fill: "#0CD3DB"
+                  fill: "#0CD3DB",
                 },
-                silent: true
+                silent: true,
               };
             },
-            data: [0]
+            data: [0],
           },
           {
             //name: '圆环',
@@ -223,8 +224,8 @@ export default {
             zlevel: 0,
             label: {
               normal: {
-                position: "center"
-              }
+                position: "center",
+              },
             },
             data: [
               {
@@ -237,33 +238,33 @@ export default {
                       colorStops: [
                         {
                           offset: 0,
-                          color: "#4FADFD" // 0% 处的颜色
+                          color: "#4FADFD", // 0% 处的颜色
                         },
                         {
                           offset: 1,
-                          color: "#28E8FA" // 100% 处的颜色
-                        }
-                      ]
-                    }
-                  }
-                }
+                          color: "#28E8FA", // 100% 处的颜色
+                        },
+                      ],
+                    },
+                  },
+                },
               },
               {
                 value: 100 - per,
                 name: "",
                 label: {
                   normal: {
-                    show: false
-                  }
+                    show: false,
+                  },
                 },
                 //剩余圆环颜色
                 itemStyle: {
                   normal: {
-                    color: "#173164"
-                  }
-                }
-              }
-            ]
+                    color: "#173164",
+                  },
+                },
+              },
+            ],
           },
           {
             name: "percent",
@@ -275,42 +276,42 @@ export default {
             splitNumber: 8,
             hoverAnimation: true,
             axisTick: {
-              show: false
+              show: false,
             },
             splitLine: {
               length: 15,
               lineStyle: {
                 width: 5,
-                color: "#061740"
-              }
+                color: "#061740",
+              },
             },
             axisLabel: {
-              show: false
+              show: false,
             },
             pointer: {
-              show: false
+              show: false,
             },
             axisLine: {
               lineStyle: {
-                opacity: 0
-              }
+                opacity: 0,
+              },
             },
             detail: {
-              show: false
+              show: false,
             },
             data: [
               {
                 value: 0,
-                name: ""
-              }
-            ]
-          }
-        ]
+                name: "",
+              },
+            ],
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -321,9 +322,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -334,8 +335,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   created() {
     this.optionsStyle = this.value.position;
@@ -343,6 +344,14 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   mounted() {
     /*        setInterval(() => {
@@ -357,7 +366,7 @@ export default {
       let y1 = y0 + r * Math.sin((x * Math.PI) / 180);
       return {
         x: x1,
-        y: y1
+        y: y1,
       };
     },
     editorOptions() {
@@ -376,13 +385,13 @@ export default {
         nums: {
           fontSize: optionsSetup.textNumFontSize,
           color: optionsSetup.textNumColor,
-          fontWeight: optionsSetup.textNumFontWeight
+          fontWeight: optionsSetup.textNumFontWeight,
         },
         percent: {
           fontSize: optionsSetup.textPerFontSize,
           color: optionsSetup.textPerColor,
-          fontWeight: optionsSetup.textPerFontWeight
-        }
+          fontWeight: optionsSetup.textPerFontWeight,
+        },
       };
       title.textStyle["rich"] = rich;
       this.options.title = title;
@@ -397,21 +406,21 @@ export default {
           colorStops: [
             {
               offset: 0,
-              color: optionsSetup.color0Start // 0% 处的颜色
+              color: optionsSetup.color0Start, // 0% 处的颜色
             },
             {
               offset: 1,
-              color: optionsSetup.color100End // 100% 处的颜色
-            }
-          ]
-        }
+              color: optionsSetup.color100End, // 100% 处的颜色
+            },
+          ],
+        },
       };
       itemStyle["normal"] = normal;
     },
     setOptionSurplusColor() {
       const itemStyle = this.options.series[6]["data"][1]["itemStyle"];
       const normal = {
-        color: this.optionsSetup.colorsurplus
+        color: this.optionsSetup.colorsurplus,
       };
       itemStyle["normal"] = normal;
     },
@@ -423,7 +432,7 @@ export default {
       line.length = optionsSetup.lineLength;
       const lineStyle = {
         width: optionsSetup.lineWidth,
-        color: optionsSetup.lineColor
+        color: optionsSetup.lineColor,
       };
       line["lineStyle"] = lineStyle;
     },
@@ -454,13 +463,13 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.options.title.text = "{nums|" + res[0].value + "}{percent|%}";
         this.options.series[6]["data"][0]["value"] = res[0].value;
         this.options.series[6]["data"][1]["value"] = 100 - res[0].value;
       });
-    }
-  }
+    },
+  },
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPieNightingaleRose.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPieNightingaleRose.vue
index d9860f68..2c41ff9e 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPieNightingaleRose.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPieNightingaleRose.vue
@@ -5,24 +5,25 @@
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetPieNightingaleRoseArea", //南丁格尔玫瑰图面积模式 参考:https://echarts.apache.org/examples/zh/editor.html?c=pie-roseType-simple
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
       options: {
         legend: {
-          top: "bottom"
+          top: "bottom",
         },
         toolbox: {
           show: true,
           feature: {
-            mark: { show: true }
-          }
+            mark: { show: true },
+          },
         },
         series: [
           {
@@ -32,16 +33,16 @@ export default {
             center: ["50%", "50%"],
             roseType: "area",
             itemStyle: {
-              borderRadius: 8
+              borderRadius: 8,
             },
-            data: []
-          }
-        ]
+            data: [],
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -52,9 +53,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -65,8 +66,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -74,6 +75,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -126,12 +135,12 @@ export default {
             padding: [-30, 15, -20, 15],
             color: optionsSetup.subTextColor,
             fontSize: optionsSetup.fontSize,
-            fontWeight: optionsSetup.fontWeight
-          }
+            fontWeight: optionsSetup.fontWeight,
+          },
         },
         fontSize: optionsSetup.fontSize,
 
-        fontWeight: optionsSetup.optionsSetup
+        fontWeight: optionsSetup.optionsSetup,
       };
       for (const key in series) {
         if (series[key].type == "pie") {
@@ -148,8 +157,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -161,7 +170,7 @@ export default {
         right: optionsSetup.marginRight,
         bottom: optionsSetup.marginBottom,
         top: optionsSetup.marginTop,
-        containLabel: true
+        containLabel: true,
       };
       this.options.grid = grid;
     },
@@ -178,7 +187,7 @@ export default {
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
@@ -222,7 +231,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -232,8 +241,8 @@ export default {
           this.options.series[key].data = val;
         }
       }
-    }
-  }
+    },
+  },
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPiechart.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPiechart.vue
index 523f42aa..19f05f2d 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPiechart.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/pie/widgetPiechart.vue
@@ -1,16 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 
 <script>
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "WidgetPiechart",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -19,15 +20,15 @@ export default {
           text: "",
           left: "center",
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         legend: {
           orient: "vertical",
           left: "left",
           textStyle: {
-            color: "#fff"
-          }
+            color: "#fff",
+          },
         },
         series: [
           {
@@ -38,16 +39,16 @@ export default {
               itemStyle: {
                 shadowBlur: 10,
                 shadowOffsetX: 0,
-                shadowColor: "rgba(0, 0, 0, 0.5)"
-              }
-            }
-          }
-        ]
+                shadowColor: "rgba(0, 0, 0, 0.5)",
+              },
+            },
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsCollapse: {}, // 图标属性
-      optionsSetup: {}
+      optionsSetup: {},
     };
   },
   computed: {
@@ -58,9 +59,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -71,8 +72,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   created() {
     this.optionsStyle = this.value.position;
@@ -80,6 +81,14 @@ export default {
     this.optionsCollapse = this.value.collapse;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -137,17 +146,17 @@ export default {
             padding: [-30, 15, -20, 15],
             color: optionsSetup.subTextColor,
             fontSize: optionsSetup.fontSize,
-            fontWeight: optionsSetup.fontWeight
-          }
+            fontWeight: optionsSetup.fontWeight,
+          },
         },
         fontSize: optionsSetup.fontSize,
 
-        fontWeight: optionsSetup.optionsSetup
+        fontWeight: optionsSetup.optionsSetup,
       };
       for (const key in series) {
         if (series[key].type == "pie") {
           series[key].label = label;
-          series[key].labelLine = {show: optionsSetup.isShow};
+          series[key].labelLine = { show: optionsSetup.isShow };
         }
       }
     },
@@ -159,8 +168,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.lineColor,
-          fontSize: optionsSetup.tipFontSize
-        }
+          fontSize: optionsSetup.tipFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -177,7 +186,7 @@ export default {
       legend.orient = optionsSetup.layoutFront;
       legend.textStyle = {
         color: optionsSetup.legendColor,
-        fontSize: optionsSetup.legendFontSize
+        fontSize: optionsSetup.legendFontSize,
       };
       legend.itemWidth = optionsSetup.legendWidth;
     },
@@ -220,7 +229,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -230,8 +239,8 @@ export default {
           this.options.series[key].data = val;
         }
       }
-    }
-  }
+    },
+  },
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/radar/widgetRadar.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/radar/widgetRadar.vue
index a1822b17..354f3242 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/radar/widgetRadar.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/radar/widgetRadar.vue
@@ -1,17 +1,17 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 <script>
 import vue from "vue";
 import VueSuperSlide from "vue-superslide";
-
+import { eventBusParams } from "@/utils/screen";
 vue.use(VueSuperSlide);
 export default {
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
@@ -20,13 +20,13 @@ export default {
         title: {},
         legend: {},
         radar: {
-          indicator: []
+          indicator: [],
         },
-        series: []
+        series: [],
       },
       optionsSetup: {},
       optionsPosition: {},
-      optionsData: {}
+      optionsData: {},
     };
   },
   computed: {
@@ -38,7 +38,7 @@ export default {
         height: allStyle.height + "px",
         left: allStyle.left + "px",
         top: allStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
     },
   },
@@ -50,14 +50,22 @@ export default {
         this.optionsData = val.data;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsSetup = this.value.setup;
     this.optionsPosition = this.value.position;
     this.optionsData = this.value.data;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     editorOptions() {
@@ -105,7 +113,7 @@ export default {
         lineStyle: {
           color: optionsSetup.axisLineColor,
           opacity: optionsSetup.axisLineOpacity / 100,
-        }
+        },
       };
       const axisName = {
         show: optionsSetup.axisNameShow,
@@ -113,14 +121,14 @@ export default {
         fontSize: optionsSetup.axisNameFontSize,
         fontStyle: optionsSetup.axisNamFontStyle,
         fontWeight: optionsSetup.axisNamFontWeight,
-      }
+      };
       const splitLine = {
         show: optionsSetup.splitLineShow,
         lineStyle: {
           color: optionsSetup.splitLineColor,
           opacity: optionsSetup.splitLineOpacity / 100,
-        }
-      }
+        },
+      };
       this.options.radar.axisLine = axisLine;
       // echarts5.X以上,name属性被替换为axisName
       this.options.radar.name = axisName;
@@ -142,7 +150,7 @@ export default {
           fontSize: optionsSetup.legendFontSize,
         },
         itemWidth: optionsSetup.legendWidth,
-      }
+      };
       this.options.legend = legend;
     },
     // 图例名称设置
@@ -151,17 +159,17 @@ export default {
       const series = this.options.series;
       const legendName = optionsSetup.legendName;
       // 图例没有手动写则显示原值,写了则显示新值
-      if (null == legendName || legendName == '') {
+      if (null == legendName || legendName == "") {
         for (let i = 0; i < name.length; i++) {
           series[0].data[i].name = name[i];
         }
-        this.options.legend['data'] = name;
+        this.options.legend["data"] = name;
       } else {
-        const arr = legendName.split('|');
+        const arr = legendName.split("|");
         for (let i = 0; i < arr.length; i++) {
           series[0].data[i].name = arr[i];
         }
-        this.options.legend['data'] = arr;
+        this.options.legend["data"] = arr;
       }
     },
     // tooltip 提示语设置,鼠标放置显示
@@ -173,13 +181,13 @@ export default {
         textStyle: {
           color: optionsSetup.tipsColor,
           fontSize: optionsSetup.tipsFontSize,
-        }
+        },
       };
       this.options.tooltip = tooltip;
     },
     // 雷达大小设置
     setOptionsMargin() {
-      this.options.radar.radius = '70%';
+      this.options.radar.radius = "70%";
     },
     setOptionsData() {
       const optionsData = this.optionsData; // 数据类型 静态 or 动态
@@ -190,8 +198,8 @@ export default {
     //去重
     setUnique(arr) {
       let newArr = [];
-      arr.forEach(item => {
-        return newArr.includes(item) ? '' : newArr.push(item);
+      arr.forEach((item) => {
+        return newArr.includes(item) ? "" : newArr.push(item);
       });
       return newArr;
     },
@@ -247,16 +255,16 @@ export default {
         legendName.push(name[i]);
       }
       this.options.series[0] = {
-        type: 'radar',
+        type: "radar",
         data: data,
         symbolSize: optionsSetup.symbolSize,
         areaStyle: {
           normal: {
             opacity: optionsSetup.opacity / 100,
-          }
+          },
         },
       };
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
     },
     dynamicDataFn(data, refreshTime) {
@@ -272,7 +280,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -328,19 +336,19 @@ export default {
         legendName.push(name[i]);
       }
       this.options.series[0] = {
-        type: 'radar',
+        type: "radar",
         data: data,
         symbolSize: optionsSetup.symbolSize,
         areaStyle: {
           normal: {
             opacity: optionsSetup.opacity / 100,
-          }
+          },
         },
       };
-      this.options.legend['data'] = legendName;
+      this.options.legend["data"] = legendName;
       this.setOptionsLegendName(legendName);
-    }
-  }
+    },
+  },
 };
 </script>
 <style lang="scss" scoped>
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/widgetHref.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/widgetHref.vue
index afa18304..469f983c 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/widgetHref.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/widgetHref.vue
@@ -19,11 +19,11 @@ export default {
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
-      options: {}
+      options: {},
     };
   },
   computed: {
@@ -52,22 +52,22 @@ export default {
         top: this.transStyle.top + "px",
         right: this.transStyle.right + "px",
         linkAdress: this.transStyle.linkAdress,
-        jumpMode: this.transStyle.jumpMode == "other" ? "_blank" : "_self"
+        jumpMode: this.transStyle.jumpMode == "other" ? "_blank" : "_self",
       };
-    }
+    },
   },
   watch: {
     value: {
       handler(val) {
         this.options = val;
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.options = this.value;
   },
-  methods: {}
+  methods: {},
 };
 </script>
 
diff --git a/report-ui/src/views/bigscreenDesigner/designer/widget/wordcloud/widgetWordCloud.vue b/report-ui/src/views/bigscreenDesigner/designer/widget/wordcloud/widgetWordCloud.vue
index acad3ff4..d4a3489c 100644
--- a/report-ui/src/views/bigscreenDesigner/designer/widget/wordcloud/widgetWordCloud.vue
+++ b/report-ui/src/views/bigscreenDesigner/designer/widget/wordcloud/widgetWordCloud.vue
@@ -1,56 +1,60 @@
 <template>
   <div :style="styleObj">
-    <v-chart :options="options" autoresize/>
+    <v-chart :options="options" autoresize />
   </div>
 </template>
 <script>
 import wordCloud from "../../../../../../static/wordCloud/echarts-wordcloud.min.js";
-
+import { eventBusParams } from "@/utils/screen";
 export default {
   name: "widgetWordCloud",
   components: {},
   props: {
     value: Object,
-    ispreview: Boolean
+    ispreview: Boolean,
   },
   data() {
     return {
       options: {
         tooltip: {
-          show: true
+          show: true,
         },
         series: [
           {
-            type: 'wordCloud',
-            size: ['9%', '99%'],
+            type: "wordCloud",
+            size: ["9%", "99%"],
             sizeRange: [6, 30],
             textRotation: [0, 45, 90, -45],
             rotationRange: [-45, 90],
-            shape: 'circle',
+            shape: "circle",
             textPadding: 0,
             autoSize: {
               enable: true,
-              minSize: 6
+              minSize: 6,
             },
             textStyle: {
               normal: {
                 color: function () {
-                  return 'rgb(' + [
-                    Math.round(Math.random() * 160),
-                    Math.round(Math.random() * 160),
-                    Math.round(Math.random() * 160)
-                  ].join(',') + ')';
-                }
+                  return (
+                    "rgb(" +
+                    [
+                      Math.round(Math.random() * 160),
+                      Math.round(Math.random() * 160),
+                      Math.round(Math.random() * 160),
+                    ].join(",") +
+                    ")"
+                  );
+                },
               },
             },
-            data: []
-          }
-        ]
+            data: [],
+          },
+        ],
       },
       optionsStyle: {}, // 样式
       optionsData: {}, // 数据
       optionsSetup: {},
-      flagInter: null
+      flagInter: null,
     };
   },
   computed: {
@@ -61,9 +65,9 @@ export default {
         height: this.optionsStyle.height + "px",
         left: this.optionsStyle.left + "px",
         top: this.optionsStyle.top + "px",
-        background: this.optionsSetup.background
+        background: this.optionsSetup.background,
       };
-    }
+    },
   },
   watch: {
     value: {
@@ -74,8 +78,8 @@ export default {
         this.optionsSetup = val.setup;
         this.editorOptions();
       },
-      deep: true
-    }
+      deep: true,
+    },
   },
   mounted() {
     this.optionsStyle = this.value.position;
@@ -83,6 +87,14 @@ export default {
     this.optionsCollapse = this.value.setup;
     this.optionsSetup = this.value.setup;
     this.editorOptions();
+    eventBusParams(
+      this.optionsSetup,
+      this.optionsData,
+      (dynamicData, optionsSetup) => {
+        console.log("dynamicData", dynamicData);
+        this.getEchartData(dynamicData, optionsSetup);
+      }
+    );
   },
   methods: {
     // 修改图标options属性
@@ -118,12 +130,18 @@ export default {
     // 词云字体范围
     setOptionsSizeRange() {
       const optionsSetup = this.optionsSetup;
-      this.options.series[0].sizeRange = [optionsSetup.minRangeSize, optionsSetup.maxRangeSize];
+      this.options.series[0].sizeRange = [
+        optionsSetup.minRangeSize,
+        optionsSetup.maxRangeSize,
+      ];
     },
     // 文字角度
     setOptionsRotationRange() {
       const optionsSetup = this.optionsSetup;
-      this.options.series[0].rotationRange = [optionsSetup.minRotationRange, optionsSetup.maxRotationRange];
+      this.options.series[0].rotationRange = [
+        optionsSetup.minRotationRange,
+        optionsSetup.maxRotationRange,
+      ];
     },
     // tooltip 设置
     setOptionsTooltip() {
@@ -133,8 +151,8 @@ export default {
         show: true,
         textStyle: {
           color: optionsSetup.tipsColor,
-          fontSize: optionsSetup.tipsFontSize
-        }
+          fontSize: optionsSetup.tipsFontSize,
+        },
       };
       this.options.tooltip = tooltip;
     },
@@ -164,7 +182,7 @@ export default {
     },
     getEchartData(val) {
       const data = this.queryEchartsData(val);
-      data.then(res => {
+      data.then((res) => {
         this.renderingFn(res);
       });
     },
@@ -172,8 +190,8 @@ export default {
       for (const key in this.options.series) {
         this.options.series[key].data = val;
       }
-    }
-  }
+    },
+  },
 };
 </script>
 <style scoped lang="scss">