|
@@ -3,38 +3,62 @@
|
|
|
<!-- 主体内容部分 -->
|
|
<!-- 主体内容部分 -->
|
|
|
<div class="content">
|
|
<div class="content">
|
|
|
<!-- 背景 -->
|
|
<!-- 背景 -->
|
|
|
- <img v-if="background.show && background.type === 'image'" class="content__background image__background"
|
|
|
|
|
- :src="background.link" />
|
|
|
|
|
- <video v-if="background.show && background.type == 'video'"
|
|
|
|
|
- :class="layout.items.length ? 'content__background' : 'content__background_1'" width="100%" autoplay loop muted
|
|
|
|
|
- disablepictureinpicture playsinline>
|
|
|
|
|
|
|
+ <img v-if="background.show && background.type === 'image'" class="content__background image__background" :src="background.link" />
|
|
|
|
|
+ <video
|
|
|
|
|
+ v-if="background.show && background.type == 'video'"
|
|
|
|
|
+ :class="layout.items.length ? 'content__background' : 'content__background_1'"
|
|
|
|
|
+ width="100%"
|
|
|
|
|
+ autoplay
|
|
|
|
|
+ loop
|
|
|
|
|
+ muted
|
|
|
|
|
+ disablepictureinpicture
|
|
|
|
|
+ playsinline
|
|
|
|
|
+ >
|
|
|
<source :src="background.link" />
|
|
<source :src="background.link" />
|
|
|
Not Supportted Link Or Browser
|
|
Not Supportted Link Or Browser
|
|
|
</video>
|
|
</video>
|
|
|
<div class="flex w-full h-full" :style="{ flexDirection: layout.direction }">
|
|
<div class="flex w-full h-full" :style="{ flexDirection: layout.direction }">
|
|
|
- <div v-for="config in layoutConfig" :key="config.name"
|
|
|
|
|
- :style="{ flexBasis: config.basis, overflow: config.overflow ? 'auto' : 'none' }">
|
|
|
|
|
|
|
+ <div v-for="config in layoutConfig" :key="config.name" :style="{ flexBasis: config.basis, overflow: config.overflow ? 'auto' : 'none' }">
|
|
|
<!-- 告示板部分 -->
|
|
<!-- 告示板部分 -->
|
|
|
<template v-if="config.name === 'board'">
|
|
<template v-if="config.name === 'board'">
|
|
|
- <div v-if="config.pageType == 'vent_New'" style="padding-top: 11%"
|
|
|
|
|
- class="content__module content__module1 flex flex-justify-around flex-items-center flex-wrap">
|
|
|
|
|
- <MiniBoard v-for="item in config.items" :key="item.prop" :label="item.label" :value="item.value"
|
|
|
|
|
- :type="config.type" :layout="config.layout" />
|
|
|
|
|
|
|
+ <div
|
|
|
|
|
+ v-if="config.pageType == 'vent_New'"
|
|
|
|
|
+ style="padding-top: 11%"
|
|
|
|
|
+ class="content__module content__module1 flex flex-justify-around flex-items-center flex-wrap"
|
|
|
|
|
+ >
|
|
|
|
|
+ <MiniBoard
|
|
|
|
|
+ v-for="item in config.items"
|
|
|
|
|
+ :key="item.prop"
|
|
|
|
|
+ :label="item.label"
|
|
|
|
|
+ :value="item.value"
|
|
|
|
|
+ :type="config.type"
|
|
|
|
|
+ :layout="config.layout"
|
|
|
|
|
+ />
|
|
|
</div>
|
|
</div>
|
|
|
- <div v-else-if="config.pageType == 'New_fire'"
|
|
|
|
|
- class="content__module flex flex-justify-around flex-items-center flex-wrap">
|
|
|
|
|
- <MiniBoardNew v-for="item in config.items" :key="item.prop" :label="item.label" :value="item.value"
|
|
|
|
|
- :type="config.type" :layout="config.layout" />
|
|
|
|
|
|
|
+ <div v-else-if="config.pageType == 'New_fire'" class="content__module flex flex-justify-around flex-items-center flex-wrap">
|
|
|
|
|
+ <MiniBoardNew
|
|
|
|
|
+ v-for="item in config.items"
|
|
|
|
|
+ :key="item.prop"
|
|
|
|
|
+ :label="item.label"
|
|
|
|
|
+ :value="item.value"
|
|
|
|
|
+ :type="config.type"
|
|
|
|
|
+ :layout="config.layout"
|
|
|
|
|
+ />
|
|
|
</div>
|
|
</div>
|
|
|
<div v-else class="content__module flex flex-justify-around flex-items-center flex-wrap">
|
|
<div v-else class="content__module flex flex-justify-around flex-items-center flex-wrap">
|
|
|
- <MiniBoard v-for="item in config.items" :key="item.prop" :label="item.label" :value="item.value"
|
|
|
|
|
- :type="config.type" :layout="config.layout" />
|
|
|
|
|
|
|
+ <MiniBoard
|
|
|
|
|
+ v-for="item in config.items"
|
|
|
|
|
+ :key="item.prop"
|
|
|
|
|
+ :label="item.label"
|
|
|
|
|
+ :value="item.value"
|
|
|
|
|
+ :type="config.type"
|
|
|
|
|
+ :layout="config.layout"
|
|
|
|
|
+ />
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
<!-- 图表部分,这部分通常需要填充,有告示板、Header等内容需要填充父级 -->
|
|
<!-- 图表部分,这部分通常需要填充,有告示板、Header等内容需要填充父级 -->
|
|
|
<template v-if="config.name === 'chart'">
|
|
<template v-if="config.name === 'chart'">
|
|
|
- <CustomChart v-if="config.pageType == 'New_dust'" class="content__module_dust" :chart-config="config.config"
|
|
|
|
|
- :chart-data="config.data" />
|
|
|
|
|
|
|
+ <CustomChart v-if="config.pageType == 'New_dust'" class="content__module_dust" :chart-config="config.config" :chart-data="config.data" />
|
|
|
<CustomChart v-else class="content__module" :chart-config="config.config" :chart-data="config.data" />
|
|
<CustomChart v-else class="content__module" :chart-config="config.config" :chart-data="config.data" />
|
|
|
</template>
|
|
</template>
|
|
|
<!-- 通常列表部分 -->
|
|
<!-- 通常列表部分 -->
|
|
@@ -57,14 +81,12 @@
|
|
|
<CustomGallery class="content__module" :type="config.type" :gallery-config="config.items" />
|
|
<CustomGallery class="content__module" :type="config.type" :gallery-config="config.items" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'gallery_new'">
|
|
<template v-if="config.name === 'gallery_new'">
|
|
|
- <CustomGalleryNew class="content__module" :type="config.config.type" :option="config.config.items"
|
|
|
|
|
- :galleryData="config.data" />
|
|
|
|
|
|
|
+ <CustomGalleryNew class="content__module" :type="config.config.type" :option="config.config.items" :galleryData="config.data" />
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<!-- 复杂列表部分 -->
|
|
<!-- 复杂列表部分 -->
|
|
|
<template v-if="config.name === 'gallery_list'">
|
|
<template v-if="config.name === 'gallery_list'">
|
|
|
- <GalleryList class="content__module" :type="config.type" :list-config="config.items"
|
|
|
|
|
- :gallery-config="config.galleryItems" />
|
|
|
|
|
|
|
+ <GalleryList class="content__module" :type="config.type" :list-config="config.items" :gallery-config="config.galleryItems" />
|
|
|
</template>
|
|
</template>
|
|
|
<!-- 复杂列表部分 -->
|
|
<!-- 复杂列表部分 -->
|
|
|
<template v-if="config.name === 'complex_list'">
|
|
<template v-if="config.name === 'complex_list'">
|
|
@@ -75,26 +97,25 @@
|
|
|
</template>
|
|
</template>
|
|
|
<!-- 表格部分,这部分通常是占一整个模块的 -->
|
|
<!-- 表格部分,这部分通常是占一整个模块的 -->
|
|
|
<template v-if="config.name === 'table'">
|
|
<template v-if="config.name === 'table'">
|
|
|
- <CustomTable class="content__module text-center overflow-auto" :type="config.type" :columns="config.columns"
|
|
|
|
|
- :data="config.data" />
|
|
|
|
|
|
|
+ <CustomTable class="content__module text-center overflow-auto" :type="config.type" :columns="config.columns" :data="config.data" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'table_new'">
|
|
<template v-if="config.name === 'table_new'">
|
|
|
- <CustomTableNew class="content__module text-center overflow-auto" :columns="config.config.columns"
|
|
|
|
|
- :tableData="config.data" />
|
|
|
|
|
|
|
+ <CustomTableNew class="content__module text-center overflow-auto" :columns="config.config.columns" :tableData="config.data" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'tabs'">
|
|
<template v-if="config.name === 'tabs'">
|
|
|
- <CustomTabs class="content__module" :type="config.type" :tab-config="config.items"
|
|
|
|
|
- :overflow="config.overflow" />
|
|
|
|
|
|
|
+ <CustomTabs class="content__module" :type="config.type" :tab-config="config.items" :overflow="config.overflow" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'blast_delta'">
|
|
<template v-if="config.name === 'blast_delta'">
|
|
|
- <BlastDelta v-if="config.pageType === 'New_fire'" class="content__moduleFire" :pos-monitor="config.data"
|
|
|
|
|
- :canvasSize="{ width: 250, height: 200 }" />
|
|
|
|
|
- <BlastDelta v-else class="content__module" :pos-monitor="config.data"
|
|
|
|
|
- :canvasSize="{ width: 250, height: 200 }" />
|
|
|
|
|
|
|
+ <BlastDelta
|
|
|
|
|
+ v-if="config.pageType === 'New_fire'"
|
|
|
|
|
+ class="content__moduleFire"
|
|
|
|
|
+ :pos-monitor="config.data"
|
|
|
|
|
+ :canvasSize="{ width: 250, height: 200 }"
|
|
|
|
|
+ />
|
|
|
|
|
+ <BlastDelta v-else class="content__module" :pos-monitor="config.data" :canvasSize="{ width: 250, height: 200 }" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'qh_curve'">
|
|
<template v-if="config.name === 'qh_curve'">
|
|
|
- <QHCurve class="content__module" :mainfan="config.data" :fan1-prop="config.config.fan1Prop"
|
|
|
|
|
- :fan2-prop="config.config.fan2Prop" />
|
|
|
|
|
|
|
+ <QHCurve class="content__module" :mainfan="config.data" :fan1-prop="config.config.fan1Prop" :fan2-prop="config.config.fan2Prop" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'ai_chat'">
|
|
<template v-if="config.name === 'ai_chat'">
|
|
|
<AIChat class="content__module" />
|
|
<AIChat class="content__module" />
|
|
@@ -107,8 +128,13 @@
|
|
|
<SelectCs :devicedata="config.data" :config="config.config" />
|
|
<SelectCs :devicedata="config.data" :config="config.config" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'measure_detail'">
|
|
<template v-if="config.name === 'measure_detail'">
|
|
|
- <MeasureDetail class="content__module" :show-title="false" :composite-data="config.data"
|
|
|
|
|
- :topconfig="config.config.topconfig" :btnconfig="config.config.btnconfig" />
|
|
|
|
|
|
|
+ <MeasureDetail
|
|
|
|
|
+ class="content__module"
|
|
|
|
|
+ :show-title="false"
|
|
|
|
|
+ :composite-data="config.data"
|
|
|
|
|
+ :topconfig="config.config.topconfig"
|
|
|
|
|
+ :btnconfig="config.config.btnconfig"
|
|
|
|
|
+ />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'partition'">
|
|
<template v-if="config.name === 'partition'">
|
|
|
<Partition class="content__module" :type="config.type" :label="config.label" :icon="config.icon" />
|
|
<Partition class="content__module" :type="config.type" :label="config.label" :icon="config.icon" />
|
|
@@ -120,8 +146,7 @@
|
|
|
<RadioLabel class="content__module" :type="config.config.type" :config="config.config" />
|
|
<RadioLabel class="content__module" :type="config.config.type" :config="config.config" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'button_list'">
|
|
<template v-if="config.name === 'button_list'">
|
|
|
- <ButtonList class="content__module" :type="config.config.type" :config="config.config"
|
|
|
|
|
- :buttonList="config.config.buttonList" />
|
|
|
|
|
|
|
+ <ButtonList class="content__module" :type="config.config.type" :config="config.config" :buttonList="config.config.buttonList" />
|
|
|
</template>
|
|
</template>
|
|
|
<template v-if="config.name === 'vent_route'">
|
|
<template v-if="config.name === 'vent_route'">
|
|
|
<VentRoute class="content__module" :ventData="config.data" :config="config.config.echartOption" />
|
|
<VentRoute class="content__module" :ventData="config.data" :config="config.config.echartOption" />
|
|
@@ -158,12 +183,12 @@ import TimelineList from '../../components/detail/TimelineList.vue';
|
|
|
import TimelineListNew from '../../components/detail/TimelineListNew.vue';
|
|
import TimelineListNew from '../../components/detail/TimelineListNew.vue';
|
|
|
import CustomList from '../../components/detail/CustomList.vue';
|
|
import CustomList from '../../components/detail/CustomList.vue';
|
|
|
import CustomGallery from '../../components/detail/CustomGallery.vue';
|
|
import CustomGallery from '../../components/detail/CustomGallery.vue';
|
|
|
-import CustomGalleryNew from '../../components/preset/CustomGalleryNew.vue'
|
|
|
|
|
|
|
+import CustomGalleryNew from '../../components/preset/CustomGalleryNew.vue';
|
|
|
import ComplexList from '../../components/detail/ComplexList.vue';
|
|
import ComplexList from '../../components/detail/ComplexList.vue';
|
|
|
import ComplexListNew from '../../components/preset/ComplexListNew.vue';
|
|
import ComplexListNew from '../../components/preset/ComplexListNew.vue';
|
|
|
import GalleryList from '../../components/detail/GalleryList.vue';
|
|
import GalleryList from '../../components/detail/GalleryList.vue';
|
|
|
import CustomTable from '../../components/detail/CustomTable.vue';
|
|
import CustomTable from '../../components/detail/CustomTable.vue';
|
|
|
-import CustomTableNew from '../../components/preset/CustomTableNew.vue'
|
|
|
|
|
|
|
+import CustomTableNew from '../../components/preset/CustomTableNew.vue';
|
|
|
import CustomChart from '../../components/detail/CustomChart.vue';
|
|
import CustomChart from '../../components/detail/CustomChart.vue';
|
|
|
import { clone } from 'lodash-es';
|
|
import { clone } from 'lodash-es';
|
|
|
import { getData, getFormattedText } from '../../hooks/helper';
|
|
import { getData, getFormattedText } from '../../hooks/helper';
|
|
@@ -179,9 +204,9 @@ import Partition from '../../components/preset/partition.vue';
|
|
|
import SelectorDualChart from '../../components/preset/selectorDualChart.vue';
|
|
import SelectorDualChart from '../../components/preset/selectorDualChart.vue';
|
|
|
import RadioLabel from '../../components/preset/radioLabel.vue';
|
|
import RadioLabel from '../../components/preset/radioLabel.vue';
|
|
|
import ButtonList from '../../components/preset/buttonList.vue';
|
|
import ButtonList from '../../components/preset/buttonList.vue';
|
|
|
-import VentRoute from '../../components/preset/ventRoute.vue'
|
|
|
|
|
-import EarlyWarnMonitor from '../../components/preset/earlyWarnMonitor.vue'
|
|
|
|
|
-import CoalSeam from '../../components/preset/CoalSeam.vue'
|
|
|
|
|
|
|
+import VentRoute from '../../components/preset/ventRoute.vue';
|
|
|
|
|
+import EarlyWarnMonitor from '../../components/preset/earlyWarnMonitor.vue';
|
|
|
|
|
+import CoalSeam from '../../components/preset/CoalSeam.vue';
|
|
|
// import FIreWarn from './preset/FIreWarn.vue';
|
|
// import FIreWarn from './preset/FIreWarn.vue';
|
|
|
// import FIreControl from './preset/FIreControl.vue';
|
|
// import FIreControl from './preset/FIreControl.vue';
|
|
|
|
|
|