From 38ff09bd2a638bc43a365efe0390cc3510d62e68 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期一, 09 六月 2025 17:36:37 +0800 Subject: [PATCH] 2025.6.9 功能编写中 --- src/views/main/MonitorView.vue | 121 +++++++++++++++++++++++++++++++++++----- 1 files changed, 106 insertions(+), 15 deletions(-) diff --git a/src/views/main/MonitorView.vue b/src/views/main/MonitorView.vue index 5f35cd8..badd461 100644 --- a/src/views/main/MonitorView.vue +++ b/src/views/main/MonitorView.vue @@ -1,38 +1,129 @@ <template> - <el-row> - <el-col :span="16"> - <el-scrollbar class="page-left-top"> - <VisualizationView></VisualizationView> - </el-scrollbar> - <el-scrollbar class="page-left-bottom"> - <InspectionView></InspectionView> - </el-scrollbar> - </el-col> - <el-col :span="8" class="page-right"> - <el-scrollbar height="var(--fy-body-height)"> + <BaseMap></BaseMap> + <el-row class="overlay-container" v-if="false"> + <el-col :span="7" class="page-right"> + <el-scrollbar height="var(--fy-body-height)" class="p-events-auto"> <ManagementView></ManagementView> </el-scrollbar> </el-col> + <el-col :span="17"> + <el-scrollbar class="page-left-top"> + <VisualizationView></VisualizationView> + </el-scrollbar> + <el-scrollbar class="page-left-bottom p-events-auto"> + <!-- <InspectionView></InspectionView> --> + </el-scrollbar> + </el-col> + <!-- <el-col :span="7" class="page-right"> + <el-scrollbar height="var(--fy-body-height)"> + <StatisticView></StatisticView> + </el-scrollbar> + </el-col> --> </el-row> + <SupervisionVisual class="supervision-view"></SupervisionVisual> + <TaskStats class="task-stats"></TaskStats> + <WorkStream class="work-stream"></WorkStream> </template> <script setup> +import { provide, ref, unref } from 'vue' + +import { useAreaStore } from '@/stores/area.js' +import { useSubtaskStore } from '@/stores/subtask.js' +import { useMapStore } from '@/stores/map.js' + +import taskApi from '@/api/fysp/taskApi.js' +import marks from '@/utils/map/marks.js' +import mapUtil from '@/utils/map/util.js' +import scene_1 from '@/assets/icon/scene_1.png' + import InspectionView from '@/views/inspection/InspectionView.vue' import ManagementView from '@/views/management/ManagementView.vue' +import StatisticView from '@/views/management/StatisticView.vue' import VisualizationView from '@/views/visualization/VisualizationView.vue' +import SupervisionVisual from '@/views/visualization/SupervisionVisual.vue' +import WorkStream from '@/views/inspection/WorkStream.vue' +import TaskStats from '@/views/management/TaskStats.vue' + +// provide('mapHeight', 'calc(var(--fy-body-height) / 4 * 3)') +provide('mapHeight', 'calc(var(--fy-body-height))') +provide('excludeMapHeight', 'calc(var(--fy-body-height) / 4 * 1)') +const windowHeight = ref(window.innerHeight) + +const areaStore = useAreaStore() +const subtaskStore = useSubtaskStore() +const mapStore = useMapStore() + +// 鍒濆鍖栨煡璇㈣寖鍥� +areaStore.setTimeOneMonth() +areaStore.setLocation({ + pCode: '31', + pName: '涓婃捣甯�', + cCode: '3100', + cName: '涓婃捣甯�', + dCode: '310106', + dName: '闈欏畨鍖�' +}) +areaStore.setSceneType({ label: '宸ュ湴', value: '1' }) + +// 鑾峰彇鏈湀鐨勬墍鏈夊贰鏌ョ粺璁′俊鎭� +subtaskStore.fetchTopTaskProgress(areaStore.area) +// subtaskStore.subtaskLoading = true +// taskApi.fetchTopTaskProgress(areaStore.area).then((res) => { +// if (res.data.length == 0) return +// const data = res.data[0] +// // 瀛樺偍涓哄叏灞�鏁版嵁 +// subtaskStore.setSummary(data) +// subtaskStore.subtaskLoading = false +// // 缁樺埗鍦板浘鏍囪 +// marks.createLabelMarks(scene_1, unref(data.subTaskSummary), (v) => { +// mapStore.focusMarker = v +// }) +// mapUtil.setFitView() +// }) </script> <style scoped> .page-left-top { - height: calc(var(--fy-body-height) / 2); - background-color: aquamarine; + height: calc(var(--fy-body-height) / 4 * 3); + /* background-color: aquamarine; */ } .page-left-bottom { - height: calc(var(--fy-body-height) / 2); - background-color: bisque; + height: calc(var(--fy-body-height) / 4 * 1); + /* background-color: bisque; */ } .page-right { /* background-color: aliceblue; */ } + +.overlay-container { + /* background: aliceblue; */ + position: absolute; + width: 100%; + /* height: 100vh; */ + top: 0; + left: 0; + /* padding: 4px; */ + pointer-events: none; +} + +.work-stream { + position: absolute; + bottom: 0; + right: 0; +} + +.task-stats { + position: absolute; + top: 0; + left: 0; +} + +.supervision-view { + position: absolute; + top: 0; + left: 0; + right: 0; +} </style> -- Gitblit v1.9.3