|
@@ -1,8 +1,25 @@
|
|
|
<!-- eslint-disable vue/multi-word-component-names -->
|
|
|
<template>
|
|
|
<div class="company-home">
|
|
|
- <div style="width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 0">
|
|
|
+ <CustomHeader> 三道沟煤矿均压综采面智能监测与动态调控 </CustomHeader>
|
|
|
+ <!-- <div style="width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 0">
|
|
|
<VentModal />
|
|
|
+ </div> -->
|
|
|
+ <div class="bg" style="width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; overflow: hidden; z-index: 0">
|
|
|
+ <a-spin :spinning="loading" />
|
|
|
+ <div id="balancePress3D" v-show="!loading" style="width: 100%; height: 100%; position: absolute; overflow: hidden"> </div>
|
|
|
+ <!-- <div id="damper3DCSS" v-show="!loading" style="width: 100%; height: 100%; top:0; left: 0; position: absolute; overflow: hidden;">
|
|
|
+ <div>
|
|
|
+ <div ref="elementContent" class="elementContent">
|
|
|
+ <p><span class="data-title">压力(Pa):</span>{{selectData.frontRearDP}}</p>
|
|
|
+ <p><span class="data-title">动力源压力(MPa):</span>{{selectData.sourcePressure}}</p>
|
|
|
+ <p><span class="data-title">故障诊断:</span>
|
|
|
+ <i
|
|
|
+ :class="{'state-icon': true, 'open': selectData.messageBoxStatus, 'close': !selectData.messageBoxStatus}"
|
|
|
+ ></i>{{selectData.fault}}</p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
<!-- 如果是有 deviceType、type 等 query,认为是详情页,不需要展示普通模块,只需要模型 -->
|
|
|
<template v-if="!route.query.deviceType">
|
|
@@ -29,8 +46,11 @@
|
|
|
:module-name="cfg.moduleName"
|
|
|
:device-type="cfg.deviceType"
|
|
|
:data="data"
|
|
|
- :visible="true"
|
|
|
+ :visible="showModules"
|
|
|
/>
|
|
|
+
|
|
|
+ <div v-if="showModules" class="switch-button icon-goto right-475px bottom-300px" @click="showModules = false"></div>
|
|
|
+ <div v-else class="switch-button icon-goto right-20px bottom-20px" @click="showModules = true"></div>
|
|
|
</template>
|
|
|
<template v-else-if="isCommon">
|
|
|
<ModuleCommon
|
|
@@ -71,11 +91,11 @@
|
|
|
class="switch-button report-mode right-525px"
|
|
|
@click="switchDataMode"
|
|
|
></div> -->
|
|
|
- <div class="switch-button icon-goto right-475px" @click="goMicroApp()"></div>
|
|
|
</template>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script lang="ts" setup>
|
|
|
+ import CustomHeader from '/@/components/vent/customHeader.vue';
|
|
|
import { onMounted, onUnmounted, ref, watch } from 'vue';
|
|
|
// import { CaretDownOutlined } from '@ant-design/icons-vue';
|
|
|
// import MonitorBar from './components/MonitorBar.vue';
|
|
@@ -85,6 +105,7 @@
|
|
|
import ModuleCommon from './components/ModuleCommon.vue';
|
|
|
// import { useRoute } from 'vue-router';
|
|
|
import VentModal from '/@/components/vent/micro/ventModal.vue';
|
|
|
+ import { mountedThree, destroy, setModelType, updateText, play } from '/@/views/vent/monitorManager/balancePressMonitor/balancePress.threejs';
|
|
|
import { list } from './configurable.api';
|
|
|
import { useRoute, useRouter } from 'vue-router';
|
|
|
import { useGlobSetting } from '/@/hooks/setting';
|
|
@@ -97,6 +118,8 @@
|
|
|
const router = useRouter();
|
|
|
const isDataRealTime = ref(sysDataType === 'monitor');
|
|
|
// const showBar = ref(true);
|
|
|
+ const loading = ref(false);
|
|
|
+ const showModules = ref(true);
|
|
|
let interval: number | undefined;
|
|
|
|
|
|
// function switchDataMode() {
|
|
@@ -184,9 +207,16 @@
|
|
|
onMounted(() => {
|
|
|
refresh();
|
|
|
initInterval();
|
|
|
+
|
|
|
+ mountedThree().then(async () => {
|
|
|
+ await setModelType('balancePressTun'); //balancePressBase
|
|
|
+ loading.value = false;
|
|
|
+ play('startSmoke', 'top', 30, 'open', 0);
|
|
|
+ });
|
|
|
});
|
|
|
|
|
|
onUnmounted(() => {
|
|
|
+ destroy();
|
|
|
clearInterval(interval);
|
|
|
});
|
|
|
</script>
|
|
@@ -280,7 +310,7 @@
|
|
|
height: 34px;
|
|
|
position: absolute;
|
|
|
// right: 5px;
|
|
|
- bottom: 300px;
|
|
|
+ // bottom: 300px;
|
|
|
z-index: 5;
|
|
|
background-repeat: no-repeat;
|
|
|
background-size: 100% 100%;
|