From 73953e3d95ecf974a5e79c1e259d33c1c9d518cc Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期四, 28 十一月 2024 16:49:27 +0800 Subject: [PATCH] add 删除功能 --- src/views/area/server-info.vue | 48 ++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 44 insertions(+), 4 deletions(-) diff --git a/src/views/area/server-info.vue b/src/views/area/server-info.vue index 448faff..3f61aea 100644 --- a/src/views/area/server-info.vue +++ b/src/views/area/server-info.vue @@ -75,8 +75,11 @@ ? 'space-text-red' : '', item.info && item.info.statusInt == 1 ? 'space-text-yellow' : '', - ]" v-if="item.info"> + ]" v-if="item.info" @click="showDeviceInfo(index,item,$event)"> {{ item.info.networkPort || "-" }} + <device-info-delete v-show="selectedIndex === item.info.id " :show_info="show_device_info" + :device_info="cur_device_info" @delPort="delPort" + ></device-info-delete> </div> <div class="port-tip">{{ item.index }}</div> </div> @@ -131,6 +134,7 @@ import equAddForm from "@/components/equ-add-form.vue"; +import deviceInfoDelete from "@/components/device-info-delete"; import { getAreaServeInfo, getFaultInfo, @@ -147,7 +151,7 @@ export default { - components: {equAddForm}, + components: {equAddForm,deviceInfoDelete}, props: { serve_info: {}, serve_select:{}, @@ -168,7 +172,11 @@ areas: [], device_list: [], // serve_info: {}, - + isDragging: false, + selectedIndex: null, + cur_device_info: null, // 当前的设备信息 + cur_item:null,// 当前的element + show_device_info: false, // 展示设备信息 }; }, created() { @@ -226,6 +234,7 @@ this.cabinetName = info.cabinetName; }, async update_server_info(code,name) { + debugger; // name 是交换机 console.log("info",code,name); this.$modal.loading("加载中"); @@ -255,8 +264,9 @@ }); } // console.log("this.activateSwitchPorts", this.activateSwitchPorts); + debugger; this.dialog_activateSwitchPorts = true; - this.cabinetName = cabinetName; + this.cabinetName = name; }, click_item_add() { console.log("this.$refs.equAddForm", this.$refs.equAddForm); @@ -269,6 +279,36 @@ } this.$refs.equAddForm && this.$refs.equAddForm.openConfigform(this.code,this.cabinetName,this.cabinetNameForOpen,config); }, + showDeviceInfo(index, item, event) { + event.stopPropagation(); // 阻止事件冒泡 + if (item.info) { + // 如果点击的是同一个元素,则切换显示状态 + if (this.selectedIndex === item.info.id) { + this.show_device_info = !this.show_device_info; + } else { + // 切换到新元素,自动关闭之前的 + this.selectedIndex = item.info.id; + this.show_device_info = true; + this.cur_device_info = item.info; + } + } + }, + async delPort(info) { + var json = { + id: info.id, + operateType: 4, + networkPort: info.name, + }; + this.$modal.loading("删除中"); + + const data = await delport(json); + console.log("info", info); + this.update_server_info(info.areaCode, info.switchName); + + // this.$modal.closeLoading(); + // this.initializeElements(); + // this.handleBindElementsItems() + }, }, }; </script> -- Gitblit v1.9.3