|
|
@@ -3,62 +3,37 @@
|
|
|
<!-- 主体内容部分 -->
|
|
|
<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="content__background content__background_video"
|
|
|
- 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="content__background content__background_video"
|
|
|
+ width="100%" autoplay loop muted disablepictureinpicture playsinline>
|
|
|
<source :src="background.link" />
|
|
|
Not Supportted Link Or Browser
|
|
|
</video>
|
|
|
<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'">
|
|
|
- <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 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 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>
|
|
|
</template>
|
|
|
<!-- 图表部分,这部分通常需要填充,有告示板、Header等内容需要填充父级 -->
|
|
|
<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" />
|
|
|
</template>
|
|
|
<!-- 通常列表部分 -->
|
|
|
@@ -82,7 +57,8 @@
|
|
|
</template>
|
|
|
<!-- 复杂列表部分 -->
|
|
|
<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 v-if="config.name === 'complex_list'">
|
|
|
@@ -90,22 +66,22 @@
|
|
|
</template>
|
|
|
<!-- 表格部分,这部分通常是占一整个模块的 -->
|
|
|
<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 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 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 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 v-if="config.name === 'ai_chat'">
|
|
|
<AIChat class="content__module" />
|
|
|
@@ -118,13 +94,8 @@
|
|
|
<SelectCs :devicedata="config.data" :setLabelData="config.config.setLabelConfig" />
|
|
|
</template>
|
|
|
<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 v-if="config.name === 'partition'">
|
|
|
<Partition class="content__module" :type="config.type" :label="config.label" :icon="config.icon" />
|
|
|
@@ -136,11 +107,15 @@
|
|
|
<RadioLabel class="content__module" :type="config.config.type" :config="config.config" />
|
|
|
</template>
|
|
|
<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 v-if="config.name === 'card_list'">
|
|
|
- <cardList class="content__module" :config="config.config" :buttonList="config.config.buttonList" />
|
|
|
+ <template v-if="config.name === 'card_list'">
|
|
|
+ <cardList class="content__module" :cardData="config.data" />
|
|
|
</template>
|
|
|
+ <template v-else-if="config.name === 'generalist'">
|
|
|
+ <generalList class="content__module"></generalList>
|
|
|
+ </template>
|
|
|
<!-- <template v-if="config.key === 'fire_control'">
|
|
|
<FIreControl class="content__module" />
|
|
|
</template>
|
|
|
@@ -186,6 +161,8 @@ import SelectorDualChart from './preset/selectorDualChart.vue';
|
|
|
import RadioLabel from './preset/radioLabel.vue';
|
|
|
import ButtonList from './preset/buttonList.vue';
|
|
|
import cardList from './preset/cardList.vue'
|
|
|
+import generalList from './preset/generalList.vue'
|
|
|
+
|
|
|
// import FIreWarn from './preset/FIreWarn.vue';
|
|
|
// import FIreControl from './preset/FIreControl.vue';
|
|
|
|