From e15245c624a20a3b46e428d646f5f2dd863cd1bc Mon Sep 17 00:00:00 2001 From: guonan <guonan201020@163.com> Date: 星期四, 17 四月 2025 14:22:36 +0800 Subject: [PATCH] 完善 --- src/views/left/Left.vue | 88 +++++++++++++++++++++++++++++--------------- 1 files changed, 58 insertions(+), 30 deletions(-) diff --git a/src/views/left/Left.vue b/src/views/left/Left.vue index dc6ec0f..1a8e365 100644 --- a/src/views/left/Left.vue +++ b/src/views/left/Left.vue @@ -12,53 +12,43 @@ " > <el-button @click="handleClick">鏂板缓浠跨湡鏂规</el-button> - <el-button>鍒犻櫎浠跨湡鏂规</el-button> + <el-button @click="deleteSelectedScheme">鍒犻櫎浠跨湡鏂规</el-button> + <!-- <el-button>鍒犻櫎浠跨湡鏂规</el-button> --> </div> - <!-- <div class="mock"> - <div - class="mock-item" - :class="item.name == currentMock ? 'active' : ''" - v-for="item in mockList" - :key="item.id" - @click="handleClick(item)" - > - <div class="mock-item-text">{{ item.name }}</div> - </div> - </div> --> - <!-- <RiverLevel v-show="currentMock === '鍒犻櫎浠跨湡鏂规'" /> - <listInfo - v-show="currentMock === '鏂板缓浠跨湡鏂规'" + <!-- 鎺ュ彛鐗堟湰鍒犻櫎璇ヤ唬鐮佸潡 --> + <schemeCard + ref="schemeCardRef" @start="start" @end="end" + @reset="reset" + /> + <!-- <schemeCard + ref="schemeCardRef" + @start="start" + @end="end" + @reset="reset" + :deleteSim="deleteSim" /> --> - <schemeCard @start="start" @end="end" /> </div> </div> <div class="left" v-show="showAddIns"> - <simulation @start="start" @end="end"/> + <simulation @start="start" @end="end" @back="handleBack" /> </div> </template> <script setup> +import { ElMessageBox, ElMessage } from "element-plus"; import { ref, onMounted, onBeforeUnmount, defineEmits } from "vue"; import Simulation from "./Simulation.vue"; import schemeCard from "@/components/monifangzhen/schemeCard.vue"; - +import { useSimStore } from "@/store/simulation.js"; // import listInfo from "@/components/monifangzhen/listInfo.vue"; // import RiverLevel from "@/components/monifangzhen/RiverLevel.vue"; import { createPoint, removeEntities } from "@/utils/map"; // import { deviceDictList, getDictName } from "@/constant/dict.js"; import { getDeviceData } from "@/api/index"; const emits = defineEmits(["start", "end"]); -// const currentMock = ref("鏂板缓浠跨湡鏂规"); -// const mockList = ref([ -// { -// name: "鍒犻櫎浠跨湡鏂规", -// }, -// { -// name: "鏂板缓浠跨湡鏂规", -// }, -// ]); + const list = [ { alias: "瀛欒儭娌熶富娌熸柇闈�1", @@ -299,14 +289,16 @@ y: 4492925.204, }, ]; - +const simStore = useSimStore(); const showAddIns = ref(false); let divPointList = []; function handleClick() { // currentMock.value = mock.name; showAddIns.value = true; } - +function handleBack(value) { + showAddIns.value = false; // 闅愯棌瀛愮粍浠� +} function initDevicePoint() { list.forEach((item) => { item.id = item.id + item.alias; @@ -405,6 +397,32 @@ const entity = viewer.entities.add(model); // entities.push(entity) } +const schemeCardRef = ref(null); + +function deleteSelectedScheme() { + const selectedId = schemeCardRef.value.getSelectedId(); + const selectedScheme = simStore.schemCard.find( + (item) => item.id === selectedId + ); + if (!selectedId) { + ElMessage.warning("璇峰厛閫夋嫨涓�涓柟妗堬紒"); + return; + } + ElMessageBox.confirm( + `纭畾瑕佸垹闄� "${selectedScheme.name}" 鏂规鍚楋紵`, + "鍒犻櫎纭", + { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + } + ) + .then(() => { + simStore.removeSchemCardItem(selectedId); + ElMessage.success(`鏂规 "${selectedScheme.name}" 鍒犻櫎鎴愬姛锛乣); + }) + .catch(() => {}); +} function start(form) { emits("start", form); @@ -424,9 +442,19 @@ }); divPointList = []; }); + +///////////////////////////鍒犻櫎浠跨湡鏂规/////////////////////////// +// const deleteSim = ref(false); + +// function reset() { +// deleteSim.value = false; // 閲嶇疆鏍囧織浣� +// } +// function deleteSelectedScheme() { +// deleteSim.value = true; +// } +///////////////////////////鍒犻櫎浠跨湡鏂规/////////////////////////// </script> <style lang="less" scoped> -@import url("../../assets/css/left.css"); .mock { padding-top: 10px; padding-right: 10px; -- Gitblit v1.9.3