From d1d5b63f8fb7a8be3897fc23341f83c69d60ffe2 Mon Sep 17 00:00:00 2001
From: "wu.jian2" <distantmtn@gmail.com>
Date: Tue, 26 Sep 2023 14:16:49 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96=E6=97=B6=E9=97=B4?=
 =?UTF-8?q?=E9=80=89=E6=8B=A9=E5=99=A8=E6=97=B6=E9=97=B4=E6=88=B3=E5=92=8C?=
 =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=97=B6=E9=97=B4=E6=A0=BC=E5=BC=8F?=
 =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E4=BA=92=E6=8D=A2=EF=BC=8C=E5=AF=BC=E8=87=B4?=
 =?UTF-8?q?=E7=9A=84=E7=BB=84=E4=BB=B6=E6=8A=A5=E9=94=99=EF=BC=8C=E6=97=A5?=
 =?UTF-8?q?=E6=9C=9F=E6=97=B6=E9=97=B4=E9=80=89=E6=8B=A9=E5=99=A8=E7=B1=BB?=
 =?UTF-8?q?=E5=9E=8B=E6=98=AF=E8=8C=83=E5=9B=B4=E6=97=B6=EF=BC=8C=E5=B0=86?=
 =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=BD=AC=E6=88=90=E5=AD=97=E7=AC=A6=E4=B8=B2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../BasicComponents/DateTimePicker/index.vue  |  6 +++-
 .../DateTimePicker/setting.vue                | 22 +-----------
 .../BasicComponents/TimePicker/index.vue      | 28 +++++++++++----
 .../BasicComponents/TimePicker/setting.vue    | 14 +-------
 .../packages/BigScreenDesign/index.vue        | 36 +++++++++----------
 data-room-ui/packages/EchartsRender/index.vue |  1 -
 6 files changed, 46 insertions(+), 61 deletions(-)

diff --git a/data-room-ui/packages/BasicComponents/DateTimePicker/index.vue b/data-room-ui/packages/BasicComponents/DateTimePicker/index.vue
index 5350515d..05daf835 100644
--- a/data-room-ui/packages/BasicComponents/DateTimePicker/index.vue
+++ b/data-room-ui/packages/BasicComponents/DateTimePicker/index.vue
@@ -147,7 +147,11 @@ export default {
     },
     // 组件联动
     changeValue (val) {
-      console.log(val)
+      // 判断如果val是数组,需要将它转成字符串
+      if (Array.isArray(val)) {
+        val = val.join(',')
+      }
+      console.log('val', val)
       this.linkage({ [this.config.code]: val })
     },
     focusEvent () {
diff --git a/data-room-ui/packages/BasicComponents/DateTimePicker/setting.vue b/data-room-ui/packages/BasicComponents/DateTimePicker/setting.vue
index 920abe17..7dd1e16c 100644
--- a/data-room-ui/packages/BasicComponents/DateTimePicker/setting.vue
+++ b/data-room-ui/packages/BasicComponents/DateTimePicker/setting.vue
@@ -218,27 +218,7 @@ export default {
   },
   watch: {},
   mounted () {},
-  methods: {
-    // selectFormatType (type) {
-    //   if (type === 'timestamp') {
-    //     this.config.customize.value = 0
-    //     this.config.customize.valueFormat = 'timestamp'
-    //   } else if (type === 'custom') {
-    //     this.config.customize.value = ''
-    //     this.config.customize.valueFormat = 'YYYY-MM-DD HH:mm:ss'
-    //   }
-    // },
-    // selectDisplayType (val) {
-    //   if (['year', 'month', 'date', 'week', 'datetime'].includes(val)) {
-    //     this.config.customize.value = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
-    //   } else {
-    //     this.config.customize.value = [
-    //       moment(new Date()).subtract(7, 'days').format('YYYY-MM-DD HH:mm:ss'),
-    //       moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
-    //     ]
-    //   }
-    // }
-  }
+  methods: { }
 }
 </script>
 
diff --git a/data-room-ui/packages/BasicComponents/TimePicker/index.vue b/data-room-ui/packages/BasicComponents/TimePicker/index.vue
index 0a3024d8..c77788f4 100644
--- a/data-room-ui/packages/BasicComponents/TimePicker/index.vue
+++ b/data-room-ui/packages/BasicComponents/TimePicker/index.vue
@@ -1,13 +1,13 @@
 <template>
   <el-time-picker
-    v-model="config.customize.value"
+    v-model="value"
     :picker-options="config.customize.pickerOptions"
     placeholder="选择时间"
     clearable
     :class="['basic-component-time-picker', `time-picker-${config.code}`]"
     :popper-class="'basic-component-time-picker time-picker-popper-' + config.code"
     :value-format="config.customize.valueFormat"
-    :default-value="config.customize.value"
+    :default-value="value"
     @focus="focusEvent"
     @change="changeValue"
     @mouseenter.native="mouseenter"
@@ -48,14 +48,29 @@ export default {
       return (this.$route.path === window?.BS_CONFIG?.routers?.previewUrl) || (this.$route.path === '/big-screen/preview')
     }
   },
-  watch: { },
+  watch: {
+
+    'config.customize.formatType': {
+      handler (val) {
+        if (val === 'timestamp') {
+          this.value = 0
+          this.config.customize.valueFormat = 'timestamp'
+        } else if (val === 'custom') {
+          this.config.customize.valueFormat = 'HH:mm:ss'
+          this.value = ''
+        }
+      },
+      immediate: true
+    }
+
+  },
   created () { },
   mounted () {
     if (!this.isPreview) {
       document.querySelector(`.time-picker-${this.config.code}`).style.pointerEvents = 'none'
     }
-    if (this.config.customize.value === '') {
-      this.config.customize.value = moment(new Date()).format(this.config.customize.valueFormat)
+    if (this.value === '') {
+      this.value = moment(new Date()).format(this.config.customize.valueFormat)
     }
     this.changeStyle(this.config)
   },
@@ -115,7 +130,6 @@ export default {
     },
     // 组件联动
     changeValue (val) {
-      console.log('val', val)
       this.linkage({ [this.config.code]: val })
     },
     focusEvent () {
@@ -156,7 +170,7 @@ export default {
       })
     },
     mouseenter () {
-      if (this.config.customize.value) {
+      if (this.value) {
         setTimeout(() => {
           // 清空图标
           const timePickerCloseIcon = document.querySelector(`.time-picker-${this.innerConfig.code} .el-icon-circle-close`)
diff --git a/data-room-ui/packages/BasicComponents/TimePicker/setting.vue b/data-room-ui/packages/BasicComponents/TimePicker/setting.vue
index 81b9fab0..db9442b5 100644
--- a/data-room-ui/packages/BasicComponents/TimePicker/setting.vue
+++ b/data-room-ui/packages/BasicComponents/TimePicker/setting.vue
@@ -89,8 +89,6 @@
                 v-model="config.customize.formatType"
                 class="bs-el-select"
                 popper-class="bs-el-select"
-                clearable
-                @change="selectFormatType"
               >
                 <el-option
                   v-for="(type) in formatTypeOptions"
@@ -177,17 +175,7 @@ export default {
   },
   watch: {},
   mounted () {},
-  methods: {
-    selectFormatType (type) {
-      if (type === 'timestamp') {
-        this.config.customize.value = 0
-        this.config.customize.valueFormat = 'timestamp'
-      } else if (type === 'custom') {
-        this.config.customize.valueFormat = 'HH:mm:ss'
-        this.config.customize.value = ''
-      }
-    }
-  }
+  methods: { }
 }
 </script>
 
diff --git a/data-room-ui/packages/BigScreenDesign/index.vue b/data-room-ui/packages/BigScreenDesign/index.vue
index b8f4609c..0c87a6fc 100644
--- a/data-room-ui/packages/BigScreenDesign/index.vue
+++ b/data-room-ui/packages/BigScreenDesign/index.vue
@@ -205,7 +205,7 @@ export default {
     }
   },
   watch: {
-    chartList(val){
+    chartList (val) {
       // console.log(val,this.activeCode)
       // if(val.findIndex(item=>item.code==this.activeCode)==-1){
       //   this.updateRightVisiable(false)
@@ -263,7 +263,7 @@ export default {
   mounted () {
     EventBus.$on('closeRightPanel', () => {
       this.updateRightVisiable(false)
-      })
+    })
   },
   beforeDestroy () {
     this.clearTimeline()
@@ -309,27 +309,27 @@ export default {
       getScreenInfo(component.code).then(res => {
         res.chartList.forEach((item) => {
           if (!item.border) {
-            item.border={type:'',titleHeight:60,fontSize:16,isTitle:true,padding:[0,0,0,0]}
+            item.border = { type: '', titleHeight: 60, fontSize: 16, isTitle: true, padding: [0, 0, 0, 0] }
           }
-          if(!item.border.padding){
-            item.border.padding=[0,0,0,0]
+          if (!item.border.padding) {
+            item.border.padding = [0, 0, 0, 0]
           }
-          if (item.type == 'customComponent'){
-            plotSettings[Symbol.iterator]=function*(){
-              let keys=Object.keys(plotSettings)
-              for(let k of keys){
-                yield [k,plotSettings[k]]
+          if (item.type == 'customComponent') {
+            plotSettings[Symbol.iterator] = function * () {
+              const keys = Object.keys(plotSettings)
+              for (const k of keys) {
+                yield [k, plotSettings[k]]
               }
             }
-            for(let [key,value] of plotSettings){
-             if (item.name == value.name) {
-                const settings=JSON.parse(JSON.stringify(value.setting))
-                item.setting=settings.map((x)=>{
-                  const index=item.setting.findIndex(y=>y.field==x.field)
+            for (const [key, value] of plotSettings) {
+              if (item.name == value.name) {
+                const settings = JSON.parse(JSON.stringify(value.setting))
+                item.setting = settings.map((x) => {
+                  const index = item.setting.findIndex(y => y.field == x.field)
                   x.field = item.setting[index].field
-                  x.value=item.setting[index].value
+                  x.value = item.setting[index].value
                   return x
-               })
+                })
               }
             }
           }
@@ -441,7 +441,7 @@ export default {
     },
     // 自定义属性更新
     updateSetting (config) {
-      if (config.type === 'map' || config.type==='screenScrollBoard'|| config.type === 'remoteComponent' || config.type === 'video' || config.type === 'flyMap') {
+      if (config.type === 'map' || config.type === 'screenScrollBoard' || config.type === 'remoteComponent' || config.type === 'video' || config.type === 'flyMap') {
         config.key = new Date().getTime()
       }
       this.changeChartConfig(cloneDeep(config))
diff --git a/data-room-ui/packages/EchartsRender/index.vue b/data-room-ui/packages/EchartsRender/index.vue
index 145a6152..5ce64851 100644
--- a/data-room-ui/packages/EchartsRender/index.vue
+++ b/data-room-ui/packages/EchartsRender/index.vue
@@ -237,7 +237,6 @@ export default {
       return config
     },
     dataFormatting (config, data) {
-      console.log('config', config);
       // config = this.config
       // 数据返回成功则赋值
       if (data.success) {