From ed892740157994092ab9a5b383c0ced48344abaf Mon Sep 17 00:00:00 2001
From: ZZJ <zzjdsg2300@163.com>
Date: 星期二, 09 十一月 2021 13:47:46 +0800
Subject: [PATCH] 暂存
---
src/components/giantTree/index.vue | 93 ++++++++++++++++++++++++++++++++++++++++------
1 files changed, 81 insertions(+), 12 deletions(-)
diff --git a/src/components/giantTree/index.vue b/src/components/giantTree/index.vue
index b1aa707..1e63341 100644
--- a/src/components/giantTree/index.vue
+++ b/src/components/giantTree/index.vue
@@ -5,15 +5,19 @@
:show-checkbox="TreeDataPool.multiple"
:readonly="TreeDataPool.readonly"
:gb28181="gb28181"
+ :setting="setting"
+ @onCreated="handleCreated"
@onClick="itemClick"
@onCheck="itemCheck"
@onDblClick="onDblClick"
+ @onAddNode="addNode"
@onRemoveNode="delNode"
@onRenameNode="editNode"
@onAddDevice="addCamera"
@onImport="importCameras"
@onExpand="itemExpand"
@onCollapse="itemCollapse"
+ @onShowPic="showCameraPic"
/>
<div class="dialog-box-bg" v-show="showDialog" @click="hideDialogBox"></div>
<div
@@ -24,7 +28,7 @@
<el-card :body-style="{ padding: '10px' }">
<el-form :model="dialogForm" size="mini" :rules="rules" ref="dialogForm" label-width="70px">
<el-form-item label="鍚嶇О锛�" prop="name">
- <el-input v-model="dialogForm.text"></el-input>
+ <el-input v-model="dialogForm.text" oninput="if(value.length>10)value=value.slice(0,10)"></el-input>
</el-form-item>
<div class="text-center pb-2">
<el-button size="mini" type="primary" @click="submitForm">淇濆瓨</el-button>
@@ -37,7 +41,6 @@
</template>
<script>
-// import VJstree from "./jsTree";
import ZTree from "./zTree/ztree"
export default {
@@ -64,11 +67,17 @@
height: {
type: Number,
default: 0
- }
+ },
+ setting: {
+ type: Object,
+ require: false,
+ default: function () {
+ return {};
+ },
+ },
},
data() {
return {
- hoverNodeId: "",
showDialog: false,
clientX: 0,
clientY: 0,
@@ -80,13 +89,12 @@
{ required: true, message: "璇疯緭鍏ヨ妭鐐瑰悕绉�", trigger: "change" },
{ min: 2, max: 10, message: "闀垮害鍦�2鍒�10涓瓧", trigger: "change" }
]
- }
+ },
+ curNodeTid: '',
};
},
created() {
- // console.log(this.height, '鏍戦珮搴�')
this.TreeDataPool.zTree = true;
-
this.TreeDataPool.activeVideoIndex = sessionStorage.activeIndexVideo
? Number(sessionStorage.activeIndexVideo)
: this.TreeDataPool.activeVideoIndex;
@@ -100,15 +108,52 @@
},
methods: {
handleCreated: function (ztreeObj) {
+ let _this = this;
this.ztreeObj = ztreeObj;
+ ztreeObj.expandAll(true)
// onCreated 涓搷浣渮treeObj瀵硅薄灞曞紑绗竴涓妭鐐�
// ztreeObj.expandNode(ztreeObj.getNodes()[0], true);
+
+ // 鎽勫儚鏈洪厤缃垏鎹㈡椂, 璁剧疆閫変腑鐘舵��
+ if (this.TreeDataPool.selectedNode.id) {
+ // 鍙栨秷鎵�鏈夊閫夌殑鑺傜偣,浠呬繚鐣欏綋鍓嶅崟閫夌殑鑺傜偣
+ this.TreeDataPool.selectedNodes = [this.TreeDataPool.selectedNode.id]
+ this.curNodeTid = this.TreeDataPool.selectedNode.tId;
+ //鎽勫儚鏈轰俊鎭洿鏂颁俊鎭悗锛屽鏋滆妭鐐逛綅缃湁鍙榯Id灏变笉鍑嗕簡,this.TreeDataPool.selectedNode姝ゆ椂杩樻槸鏃х殑淇℃伅
+ let ztreeNodes = ztreeObj.getNodes();
+ //var curNodeTid = '';
+ _this.findTidByIdFromArr(ztreeNodes);
+ this.TreeDataPool.selectedNode.tId = _this.curNodeTid;
+ let node = this.ztreeObj.getNodeByTId(this.TreeDataPool.selectedNode.tId)
+
+ // 澶氶�夋椂, 閫変腑鍗曢�夊崟鍑荤殑鑺傜偣
+ if (this.TreeDataPool.multiple) {
+ this.ztreeObj.checkAllNodes(false);
+ this.ztreeObj.checkNode(node, true, false, false);
+ }
+
+ this.ztreeObj.selectNode(node, false, true)
+ }
+ },
+
+ findTidByIdFromArr(arr) {
+ let len = arr.length;
+ let _this = this;
+ for (var i = 0; i < len; i++) {
+ if (arr[i].id == this.TreeDataPool.selectedNode.id) {
+ _this.curNodeTid = arr[i].tId;
+ break;
+ }
+ if (arr[i].children) {
+ this.findTidByIdFromArr(arr[i].children);
+ }
+ }
+
},
onDblClick(evt, treeId, item) {
if (item.type !== "4" || this.app !== "Camera") {
return;
}
- // console.log('activeForceChoose', this.TreeDataPool.activeForceChoose)
this.TreeDataPool.activeVideoId = item.id;
let videoArr = this.TreeDataPool.videoArr;
let nullVideoIndex = "";
@@ -169,7 +214,7 @@
importCameras(node) {
this.$emit("import", node);
},
- addNode(event, node) {
+ addNode(node) {
this.dialogForm = {
text: "",
method: "add",
@@ -222,6 +267,7 @@
this.showDialog = true;
},
itemClick(evt, treeId, treeNode) {
+
this.TreeDataPool.selectedNode = treeNode;
this.TreeDataPool.treeType = this.treeName;
@@ -234,26 +280,49 @@
this.TreeDataPool.updateZTreeCheckNodes([treeNode]);
},
+ // itemClick(treeNode) {
+ // this.TreeDataPool.selectedNode = treeNode;
+ // this.TreeDataPool.treeType = this.treeName;
+
+ // // 澶氶��
+ // if (this.TreeDataPool.multiple) {
+ // // 鍗曞嚮鏌愪竴涓妭鐐规枃瀛楁椂 鍙栨秷鎵�鏈夊嬀閫夌姸鎬� 鐒跺悗閫変腑鑷韩
+ // this.ztreeObj.checkAllNodes(false);
+ // this.ztreeObj.checkNode(treeNode, true, false, false);
+ // }
+
+ // this.TreeDataPool.updateZTreeCheckNodes([treeNode]);
+ // },
itemCheck(evt, treeId, treeNode) {
this.TreeDataPool.selectedNode = treeNode;
this.TreeDataPool.treeType = this.treeName;
-
+ debugger
// 澶氶��
// this.ztreeObj.checkNode(treeNode, true, false, false);
let checkedNodes = this.ztreeObj.getCheckedNodes(true);
this.TreeDataPool.updateZTreeCheckNodes(checkedNodes);
+
+ // 瀹炴椂缁熻閫変腑涓暟
+ this.TreeDataPool.countCheckedNodes(checkedNodes);
+
+ // 淇濆瓨涓�浠芥暟鎹�
+ this.TreeDataPool.activeTreeData = this.ztreeObj.getNodes()
+
},
//灞曞紑
itemExpand(e, id, node) {
- this.TreeDataPool.foldNodeList[node.id] = true
+ delete this.TreeDataPool.foldNodeList[node.id]
},
// 鎶樺彔
itemCollapse(e, id, node) {
- delete this.TreeDataPool.foldNodeList[node.id]
+ this.TreeDataPool.foldNodeList[node.id] = true
},
dropNode(node, item, draggedItem, e) {
// console.log('dropNode', node, item, draggedItem);
this.TreeDataPool.dropNode(draggedItem.id, item.id)
+ },
+ showCameraPic(nodeId) {
+ this.TreeDataPool.showBaseImage(nodeId)
}
}
};
--
Gitblit v1.8.0