main
parent
2dce720b2c
commit
4f7a7b5c5d
Binary file not shown.
After Width: | Height: | Size: 36 KiB |
|
@ -19,6 +19,8 @@
|
|||
</el-timeline-item>
|
||||
</el-timeline>
|
||||
</dv-border-box-10>
|
||||
<div class="box-button" @click="openDialog">
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
|
@ -55,8 +57,11 @@ const data = reactive({
|
|||
size: 'large'
|
||||
}]
|
||||
});
|
||||
|
||||
const { activities } = toRefs(data);
|
||||
const emit = defineEmits(['openDialog'])
|
||||
const openDialog = () => {
|
||||
emit('openDialog')
|
||||
}
|
||||
|
||||
</script>
|
||||
<style lang='scss' scoped>
|
||||
|
@ -104,5 +109,16 @@ const { activities } = toRefs(data);
|
|||
}
|
||||
|
||||
}
|
||||
.box-button {
|
||||
width:20px;
|
||||
height:20px;
|
||||
position: absolute;
|
||||
bottom: 10px;
|
||||
right: 10px;
|
||||
border: 2px solid #3cbfdf;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -8,14 +8,14 @@
|
|||
<div :id="'echartDiv' + index" class="echartDiv100" v-for="(item, index) of deviceList" :key="index"></div>
|
||||
</div>
|
||||
<div class="bottom-div">
|
||||
<el-table :data="tableData" border style="width: 100%" height="450">
|
||||
<el-table :data="tableData" border style="width: 100%" height="420">
|
||||
<el-table-column label="序号" width="60" type="index" align="center"></el-table-column>
|
||||
<el-table-column prop="name" label="名称" align="center"/>
|
||||
<el-table-column prop="num" label="编码" align="center"/>
|
||||
<el-table-column prop="type" label="类型" align="center"/>
|
||||
<el-table-column label="操作" align="center">
|
||||
<template #default="scope">
|
||||
<el-button link type="primary" @click="handleClearCacheName(scope.row)">查看</el-button>
|
||||
<el-button type="primary" @click="viewDetail(scope.row)">查看</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -105,6 +105,9 @@ onMounted(() => {
|
|||
|
||||
const getCharts = (data) => {
|
||||
|
||||
}
|
||||
|
||||
const viewDetail = (val) => {
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
@ -31,6 +31,7 @@ const data = reactive({
|
|||
|
||||
const { equipmentInfo } = toRefs(data);
|
||||
|
||||
|
||||
</script>
|
||||
<style lang='scss' scoped>
|
||||
.buildDiv {
|
||||
|
|
|
@ -32,6 +32,8 @@
|
|||
<span class="text">{{ realInfo.area }}</span>
|
||||
</div>
|
||||
</dv-border-box-10>
|
||||
<div class="box-button" @click="openDialog">
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
|
@ -50,6 +52,11 @@ const data = reactive({
|
|||
});
|
||||
|
||||
const { realInfo } = toRefs(data);
|
||||
const { equipmentInfo } = toRefs(data);
|
||||
const emit = defineEmits(['openDialog'])
|
||||
const openDialog = () => {
|
||||
emit('openDialog')
|
||||
}
|
||||
</script>
|
||||
<style lang='scss' scoped>
|
||||
.deviceDiv {
|
||||
|
@ -76,5 +83,16 @@ const { realInfo } = toRefs(data);
|
|||
color: #fff;
|
||||
}
|
||||
}
|
||||
.box-button {
|
||||
width:20px;
|
||||
height:20px;
|
||||
position: absolute;
|
||||
bottom: 10px;
|
||||
right: 10px;
|
||||
border: 2px solid #3cbfdf;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,54 @@
|
|||
<template>
|
||||
<div class="realInfoDialog">
|
||||
<div class="top-div">
|
||||
|
||||
</div>
|
||||
<div class="bottom-div">
|
||||
<div class="left-div">
|
||||
|
||||
</div>
|
||||
<div class="right-div">
|
||||
<img src="@/assets/images/1.png" alt="" width="100%">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
const data = reactive({
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.realInfoDialog {
|
||||
height: 600px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
flex-direction: column;
|
||||
|
||||
.top-div {
|
||||
width: 100%;
|
||||
height: 25%;
|
||||
border: 1px solid #3cbfdf;
|
||||
}
|
||||
|
||||
.bottom-div {
|
||||
width: 100%;
|
||||
height: 72%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.left-div {
|
||||
width: 20%;
|
||||
height: 100%;
|
||||
border: 1px solid #3cbfdf;
|
||||
}
|
||||
.right-div {
|
||||
width: 79%;
|
||||
height: 100%;
|
||||
border: 1px solid #3cbfdf;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<!-- 模型 -->
|
||||
<ThreeView background="#dcedff" light="0xffffff" :sceneUrl="sceneUrl"></ThreeView>
|
||||
<ThreeView background="#353535" light="0xffffff" :sceneUrl="sceneUrl"></ThreeView>
|
||||
<!-- 底部菜单 -->
|
||||
<MenuTab @changeMenu="changeMenu"></MenuTab>
|
||||
<!-- 左侧建筑菜单 -->
|
||||
|
@ -15,13 +15,13 @@
|
|||
<!-- 资产信息 -->
|
||||
<DeviceInfo v-if="activateIndex == 1"></DeviceInfo>
|
||||
<!-- 资产事件 -->
|
||||
<DeviceEvent v-if="activateIndex == 1"></DeviceEvent>
|
||||
<DeviceEvent v-if="activateIndex == 1" @openDialog="openDialog1"></DeviceEvent>
|
||||
<!-- 左侧应用菜单 -->
|
||||
<ApplicationTree v-if="activateIndex == 2" @handleNodeClick="handleApplicationClick"></ApplicationTree>
|
||||
<!-- 设备信息 -->
|
||||
<EquipmentInfo v-if="activateIndex == 2"></EquipmentInfo>
|
||||
<!-- 实时数据 -->
|
||||
<RealData v-if="activateIndex == 2"></RealData>
|
||||
<RealData v-if="activateIndex == 2" @openDialog="openDialog1"></RealData>
|
||||
<!-- 资产信息弹出框 -->
|
||||
<el-dialog
|
||||
v-model="dialogVisible"
|
||||
|
@ -31,6 +31,15 @@
|
|||
>
|
||||
<DeviceInfoDialog></DeviceInfoDialog>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
v-model="dialogVisible1"
|
||||
title="实时数据"
|
||||
width="1200px"
|
||||
append-to-body
|
||||
>
|
||||
<RealInfoDialog></RealInfoDialog>
|
||||
</el-dialog>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
<script setup name="bimHome">
|
||||
|
@ -46,6 +55,7 @@ import EquipmentInfo from './components/EquipmentInfo.vue';
|
|||
import RealData from './components/RealData.vue';
|
||||
import ThreeView from './components/ThreeView.vue';
|
||||
import DeviceInfoDialog from './components/DeviceInfoDialog.vue';
|
||||
import RealInfoDialog from './components/RealInfoDialog.vue';
|
||||
import bimStore from '@/store/modules/bim';
|
||||
const data = reactive({
|
||||
sceneUrl: '/jz/glb/jz.gltf'
|
||||
|
@ -53,6 +63,7 @@ const data = reactive({
|
|||
|
||||
const { sceneUrl } = toRefs(data);
|
||||
const dialogVisible = ref(false);
|
||||
const dialogVisible1 = ref(false);
|
||||
|
||||
const activateIndex = computed(() =>
|
||||
bimStore().activateIndex
|
||||
|
@ -88,6 +99,10 @@ const changeMenu = () => {
|
|||
const openDialog = () => {
|
||||
dialogVisible.value = true;
|
||||
}
|
||||
|
||||
const openDialog1 = () => {
|
||||
dialogVisible1.value = true;
|
||||
}
|
||||
</script>
|
||||
<style lang='scss' scoped>
|
||||
.app-container {
|
||||
|
|
Loading…
Reference in New Issue