| | |
| | | showLine: true, |
| | | showIcon: true, // default to hide icon |
| | | addHoverDom: this.addHoverDom, |
| | | removeHoverDom: this.removeHoverDom |
| | | removeHoverDom: this.removeHoverDom, |
| | | }, |
| | | check: { |
| | | chkboxType: { "Y": "", "N": "" }, |
| | | enable: this.showCheckbox |
| | | chkboxType: { Y: "", N: "" }, |
| | | enable: this.showCheckbox, |
| | | }, |
| | | callback: { |
| | | onAsyncError: (...arg) => { |
| | |
| | | }, |
| | | onMouseUp: (...arg) => { |
| | | this.$emit("onMouseUp", ...arg); |
| | | |
| | | }, |
| | | onRemove: (...arg) => { |
| | | this.$emit("onRemove", ...arg); |
| | |
| | | }, |
| | | showCheckbox: { |
| | | handler: function () { |
| | | let top = $("#" + this.ztreeId) |
| | | .parent() |
| | | .scrollTop(); |
| | | |
| | | this.ztreeSetting.check.enable = this.showCheckbox; |
| | | |
| | | if (this.ztreeObj) { |
| | |
| | | Object.assign({}, this.ztreeSetting, this.setting), |
| | | this.list |
| | | ); |
| | | $("#" + this.ztreeId) |
| | | .parent() |
| | | .scrollTop(top); |
| | | this.$emit("onCreated", this.ztreeObj); |
| | | }); |
| | | }, |
| | | immediate: true, |
| | | } |
| | | }, |
| | | }, |
| | | methods: { |
| | | addHoverDom(treeid, treeNode) { |
| | |
| | | const item = document.getElementById(`${treeNode.tId}_a`); |
| | | |
| | | // 文件夹新增按钮 |
| | | if (item && !item.querySelector('.el-icon-circle-plus-outline') && treeNode.isParent && !this.readonly && !this.gb28181) { |
| | | const btn = document.createElement('i'); |
| | | if ( |
| | | item && |
| | | !item.querySelector(".el-icon-circle-plus-outline") && |
| | | treeNode.isParent && |
| | | !this.readonly && |
| | | !this.gb28181 |
| | | ) { |
| | | const btn = document.createElement("i"); |
| | | btn.id = `${treeid}_${treeNode.id}_btn`; |
| | | btn.classList.add('el-icon-circle-plus-outline'); |
| | | btn.classList.add('primary'); |
| | | btn.classList.add("el-icon-circle-plus-outline"); |
| | | btn.classList.add("primary"); |
| | | // btn.innerText = '删除'; |
| | | btn.addEventListener('click', (e) => { |
| | | e.stopPropagation() |
| | | btn.addEventListener("click", (e) => { |
| | | e.stopPropagation(); |
| | | // this.clickRemove(treeNode) |
| | | _vue.$emit("onAddNode", treeNode); |
| | | }) |
| | | }); |
| | | |
| | | item.appendChild(btn); |
| | | } |
| | | |
| | | // 文件夹删除按钮 |
| | | if (item && !item.querySelector('.el-icon-remove-outline') && treeNode.isParent && !this.readonly && !treeNode.children && !this.gb28181) { |
| | | const btn = document.createElement('i'); |
| | | if ( |
| | | item && |
| | | !item.querySelector(".el-icon-remove-outline") && |
| | | treeNode.isParent && |
| | | !this.readonly && |
| | | !treeNode.children && |
| | | !this.gb28181 |
| | | ) { |
| | | const btn = document.createElement("i"); |
| | | btn.id = `${treeid}_${treeNode.id}_btn`; |
| | | btn.classList.add('el-icon-remove-outline'); |
| | | btn.classList.add('danger'); |
| | | btn.classList.add("el-icon-remove-outline"); |
| | | btn.classList.add("danger"); |
| | | // btn.innerText = '删除'; |
| | | btn.addEventListener('click', (e) => { |
| | | e.stopPropagation() |
| | | btn.addEventListener("click", (e) => { |
| | | e.stopPropagation(); |
| | | // this.clickRemove(treeNode) |
| | | _vue.$emit("onRemoveNode", treeNode); |
| | | }) |
| | | }); |
| | | |
| | | item.appendChild(btn); |
| | | } |
| | | |
| | | // 文件夹编辑按钮 |
| | | if (item && !item.querySelector('.el-icon-edit') && treeNode.isParent && !this.readonly) { |
| | | const btn = document.createElement('i'); |
| | | if ( |
| | | item && |
| | | !item.querySelector(".el-icon-edit") && |
| | | treeNode.isParent && |
| | | !this.readonly |
| | | ) { |
| | | const btn = document.createElement("i"); |
| | | btn.id = `${treeid}_${treeNode.id}_btn`; |
| | | btn.classList.add('el-icon-edit'); |
| | | btn.classList.add('primary'); |
| | | btn.classList.add("el-icon-edit"); |
| | | btn.classList.add("primary"); |
| | | // btn.innerText = '删除'; |
| | | btn.addEventListener('click', (e) => { |
| | | e.stopPropagation() |
| | | btn.addEventListener("click", (e) => { |
| | | e.stopPropagation(); |
| | | // this.clickRemove(treeNode) |
| | | _vue.$emit("onRenameNode", treeNode); |
| | | }) |
| | | }); |
| | | |
| | | item.appendChild(btn); |
| | | } |
| | | |
| | | // 添加摄像机按钮 |
| | | if (item && !item.querySelector('.iconshishishipin') && treeNode.isParent && !this.readonly && !this.gb28181) { |
| | | const btn = document.createElement('i'); |
| | | if ( |
| | | item && |
| | | !item.querySelector(".iconshishishipin") && |
| | | treeNode.isParent && |
| | | !this.readonly && |
| | | !this.gb28181 |
| | | ) { |
| | | const btn = document.createElement("i"); |
| | | btn.id = `${treeid}_${treeNode.id}_btn`; |
| | | btn.classList.add('iconfont'); |
| | | btn.classList.add('iconshishishipin'); |
| | | btn.classList.add('primary'); |
| | | btn.classList.add('icon-fix'); |
| | | btn.classList.add("iconfont"); |
| | | btn.classList.add("iconshishishipin"); |
| | | btn.classList.add("primary"); |
| | | btn.classList.add("icon-fix"); |
| | | // btn.innerText = '删除'; |
| | | btn.addEventListener('click', (e) => { |
| | | e.stopPropagation() |
| | | btn.addEventListener("click", (e) => { |
| | | e.stopPropagation(); |
| | | // this.clickRemove(treeNode) |
| | | _vue.$emit("onAddDevice", treeNode.id); |
| | | }) |
| | | }); |
| | | |
| | | item.appendChild(btn); |
| | | } |
| | | |
| | | // 导入摄像机按钮 |
| | | if (item && !item.querySelector('.icondaoru') && treeNode.isParent && !this.readonly && !this.gb28181) { |
| | | const btn = document.createElement('i'); |
| | | if ( |
| | | item && |
| | | !item.querySelector(".icondaoru") && |
| | | treeNode.isParent && |
| | | !this.readonly && |
| | | !this.gb28181 |
| | | ) { |
| | | const btn = document.createElement("i"); |
| | | btn.id = `${treeid}_${treeNode.id}_btn`; |
| | | btn.classList.add('iconfont'); |
| | | btn.classList.add('icondaoru'); |
| | | btn.classList.add('primary'); |
| | | btn.classList.add('icon-fix'); |
| | | btn.classList.add("iconfont"); |
| | | btn.classList.add("icondaoru"); |
| | | btn.classList.add("primary"); |
| | | btn.classList.add("icon-fix"); |
| | | // btn.innerText = '删除'; |
| | | btn.addEventListener('click', (e) => { |
| | | e.stopPropagation() |
| | | btn.addEventListener("click", (e) => { |
| | | e.stopPropagation(); |
| | | // this.clickRemove(treeNode) |
| | | _vue.$emit("onImport", treeNode.id); |
| | | }) |
| | | }); |
| | | |
| | | item.appendChild(btn); |
| | | } |
| | | |
| | | // 查看底图按钮 |
| | | if (item && !item.querySelector('.icontupian1') && treeNode.type == "camera") { |
| | | const btn = document.createElement('i'); |
| | | if ( |
| | | item && |
| | | !item.querySelector(".icontupian1") && |
| | | treeNode.type == "camera" |
| | | ) { |
| | | const btn = document.createElement("i"); |
| | | btn.id = `${treeid}_${treeNode.id}_btn`; |
| | | btn.classList.add('iconfont'); |
| | | btn.classList.add('icontupian1'); |
| | | btn.classList.add('primary'); |
| | | btn.classList.add('icon-fix'); |
| | | btn.classList.add("iconfont"); |
| | | btn.classList.add("icontupian1"); |
| | | btn.classList.add("primary"); |
| | | btn.classList.add("icon-fix"); |
| | | // btn.innerText = '删除'; |
| | | btn.addEventListener('click', (e) => { |
| | | e.stopPropagation() |
| | | btn.addEventListener("click", (e) => { |
| | | e.stopPropagation(); |
| | | // this.clickRemove(treeNode) |
| | | _vue.$emit("onShowPic", treeNode); |
| | | }) |
| | | }); |
| | | |
| | | item.appendChild(btn); |
| | | } |
| | |
| | | removeHoverDom(treeid, treeNode) { |
| | | const item = document.getElementById(`${treeNode.tId}_a`); |
| | | if (item) { |
| | | let btn = item.querySelector('.el-icon-circle-plus-outline'); |
| | | let btn = item.querySelector(".el-icon-circle-plus-outline"); |
| | | if (btn) { |
| | | item.removeChild(item.querySelector('.el-icon-circle-plus-outline')) |
| | | item.removeChild(item.querySelector(".el-icon-circle-plus-outline")); |
| | | } |
| | | |
| | | btn = item.querySelector('.el-icon-remove-outline'); |
| | | btn = item.querySelector(".el-icon-remove-outline"); |
| | | if (btn) { |
| | | item.removeChild(item.querySelector('.el-icon-remove-outline')) |
| | | item.removeChild(item.querySelector(".el-icon-remove-outline")); |
| | | } |
| | | |
| | | btn = item.querySelector('.el-icon-edit'); |
| | | btn = item.querySelector(".el-icon-edit"); |
| | | if (btn) { |
| | | item.removeChild(item.querySelector('.el-icon-edit')) |
| | | item.removeChild(item.querySelector(".el-icon-edit")); |
| | | } |
| | | |
| | | btn = item.querySelector('.iconshishishipin'); |
| | | btn = item.querySelector(".iconshishishipin"); |
| | | if (btn) { |
| | | item.removeChild(item.querySelector('.iconshishishipin')) |
| | | item.removeChild(item.querySelector(".iconshishishipin")); |
| | | } |
| | | |
| | | btn = item.querySelector('.icondaoru'); |
| | | btn = item.querySelector(".icondaoru"); |
| | | if (btn) { |
| | | item.removeChild(item.querySelector('.icondaoru')) |
| | | item.removeChild(item.querySelector(".icondaoru")); |
| | | } |
| | | |
| | | btn = item.querySelector('.icontupian1'); |
| | | btn = item.querySelector(".icontupian1"); |
| | | if (btn) { |
| | | item.removeChild(item.querySelector('.icontupian1')) |
| | | item.removeChild(item.querySelector(".icontupian1")); |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | }, |
| | | }; |
| | | </script> |
| | | |