From a34292254a49fbe57d4637304c39ab98ab88a610 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期三, 29 十月 2025 17:08:10 +0800
Subject: [PATCH] 大屏修改,录像核查修改,查询视频设备修改
---
src/components/RightToolbar/index.vue | 81 ++++++++++++++++++++++++++++++++++++++++
1 files changed, 80 insertions(+), 1 deletions(-)
diff --git a/src/components/RightToolbar/index.vue b/src/components/RightToolbar/index.vue
index 67da293..02213b4 100644
--- a/src/components/RightToolbar/index.vue
+++ b/src/components/RightToolbar/index.vue
@@ -7,11 +7,14 @@
<el-tooltip class="item" effect="dark" content="鍒锋柊" placement="top">
<el-button size="mini" circle icon="el-icon-refresh" @click="refresh()" />
</el-tooltip>
+ <el-tooltip v-show="$route.path.includes('point')" class="item" effect="dark" content="鑷畾涔夊垪" placement="top">
+ <el-button size="mini" circle icon="el-icon-collection-tag" @click="addDynamicColumn()" />
+ </el-tooltip>
<el-tooltip class="item" effect="dark" content="鏄鹃殣鍒�" placement="top" v-if="columns">
<el-button size="mini" circle icon="el-icon-menu" @click="showColumn()" v-if="showColumnsType == 'transfer'"/>
<el-dropdown trigger="click" :hide-on-click="false" style="padding-left: 12px" v-if="showColumnsType == 'checkbox'">
<el-button size="mini" circle icon="el-icon-menu" />
- <el-dropdown-menu slot="dropdown">
+ <el-dropdown-menu slot="dropdown" style="max-height: 650px;overflow-y: auto">
<template v-for="item in columns">
<el-dropdown-item :key="item.key">
<el-checkbox :checked="item.visible" @change="checkboxChange($event, item.label)" :label="item.label" />
@@ -29,19 +32,52 @@
@change="dataChange"
></el-transfer>
</el-dialog>
+
+
+ <el-dialog
+ title="娣诲姞鍔ㄦ�佸垪"
+ :visible.sync="showDynamicColumn"
+ width="500px"
+ :before-close="dynamicColumnClose">
+ <div>
+ <div style="margin-bottom: 8px">
+ <el-button style="float: right" type="primary" @click="addColumn" size="small">鏂板涓�鏉�</el-button>
+ </div>
+ <div v-for="(dynamicColumn, index) in dynamicColumnList" :key="index">
+ <el-form :inline="true" size="small">
+ <el-form-item label="鍒楀悕" prop="labelValue">
+ <div style="display: flex; flex-direction: row">
+ <el-input v-model="dynamicColumn.labelValue"></el-input>
+ <el-button style="margin-left: 8px" type="danger" @click="delColumn(dynamicColumn.id, index)">鍒犻櫎</el-button>
+ </div>
+ </el-form-item>
+ </el-form>
+ </div>
+ </div>
+
+ <span slot="footer" class="dialog-footer">
+ <el-button size="small" @click="dynamicColumnClose">鍙� 娑�</el-button>
+ <el-button type="primary" size="small" :disabled="!dynamicColumnList || dynamicColumnList.length < 1" @click="saveColumns">淇� 瀛�</el-button>
+ </span>
+ </el-dialog>
+
</div>
</template>
<script>
+import { addDynamicColumn, deleteDynamicColumnById, editDynamicColumn, getDynamicColumnList } from '@/api/platform/dynamicColumn'
export default {
name: "RightToolbar",
data() {
return {
+ dynamicColumnList: [],
+ showDynamicColumn: false,
// 鏄鹃殣鏁版嵁
value: [],
// 寮瑰嚭灞傛爣棰�
title: "鏄剧ず/闅愯棌",
// 鏄惁鏄剧ず寮瑰嚭灞�
open: false,
+ tableKey: 0,
};
},
props: {
@@ -80,6 +116,9 @@
}
},
created() {
+ if (this.$route.path.includes("point")) {
+ this.getDyColumn()
+ }
if (this.showColumnsType == 'transfer') {
// 鏄鹃殣鍒楀垵濮嬮粯璁ら殣钘忓垪
for (let item in this.columns) {
@@ -90,6 +129,46 @@
}
},
methods: {
+ getDyColumn() {
+ // 鏌ヨ鍔ㄦ�佸垪
+ let params = {
+ tableName: 't_yw_point'
+ }
+ getDynamicColumnList(params).then(res => {
+ this.dynamicColumnList = res.data
+ })
+ },
+ addDynamicColumn() {
+ this.getDyColumn()
+ this.showDynamicColumn = true
+ },
+ saveColumns() {
+ editDynamicColumn(this.dynamicColumnList).then(res => {
+ this.$message.success("淇濆瓨鎴愬姛")
+ this.$emit('refreshHeader');
+ this.showDynamicColumn = false
+ })
+ },
+ addColumn() {
+ this.dynamicColumnList.push({
+ id: null,
+ labelValue: ''
+ })
+ },
+ delColumn(id, index) {
+ if(id) {
+ deleteDynamicColumnById(id).then(res => {
+ this.$message.success("鍒犻櫎鎴愬姛")
+ this.getDyColumn();
+ this.$emit('refreshHeader');
+ })
+ }else {
+ this.dynamicColumnList.splice(index,1)
+ }
+ },
+ dynamicColumnClose() {
+ this.showDynamicColumn = false
+ },
// 鎼滅储
toggleSearch() {
this.$emit("update:showSearch", !this.showSearch);
--
Gitblit v1.8.0