From b96d0e41cb4d68074fef53ae0ef10ee0c6be1b07 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期五, 28 二月 2025 15:46:20 +0800 Subject: [PATCH] DNC模块: 1、解决点击tabs栏空白处出现空内容组件问题 2、新增树内容搜索时若清空内容后还原为搜索前展开的树节点的功能 产品结构树: 1、工艺和工步层级开放其他文档列表的展示 2、零件层级下新增工艺规程版本层级,并实现工艺规程版本层级的相应功能(增删改) 3、解决因设备结构树数据未加载完成就跳转至产品结构树页面导致接口获取到的前页面方法影响后页面从而出现混乱问题 --- src/views/dnc/base/modules/ProductStructure/ProductStructureTree.vue | 53 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 36 insertions(+), 17 deletions(-) diff --git a/src/views/dnc/base/modules/ProductStructure/ProductStructureTree.vue b/src/views/dnc/base/modules/ProductStructure/ProductStructureTree.vue index 0a5eee6..1a8ebdf 100644 --- a/src/views/dnc/base/modules/ProductStructure/ProductStructureTree.vue +++ b/src/views/dnc/base/modules/ProductStructure/ProductStructureTree.vue @@ -36,6 +36,7 @@ <a-icon slot="product" type="shopping"/> <a-icon slot="component" type="camera"/> <a-icon slot="part" type="hdd"/> + <a-icon slot="processSpecVersion" type="tag"/> <a-icon slot="process" type="apartment"/> <a-icon slot="processStep" type="tool"/> </a-tree> @@ -50,6 +51,8 @@ <ComponentModal :currentTreeNodeInfo="rightClickSelected" @submitSuccess="modalFormSubmitSuccess"/> <!--闆朵欢寮圭獥--> <PartModal :currentTreeNodeInfo="rightClickSelected" @submitSuccess="modalFormSubmitSuccess"/> + <!--宸ヨ壓瑙勭▼鐗堟湰寮圭獥--> + <ProcessSpecVersionModal :currentTreeNodeInfo="rightClickSelected" @submitSuccess="modalFormSubmitSuccess"/> <!--宸ュ簭寮圭獥--> <ProcessModal :currentTreeNodeInfo="rightClickSelected" @submitSuccess="modalFormSubmitSuccess"/> <!--宸ユ寮圭獥--> @@ -66,6 +69,7 @@ import ProductModal from './Product/ProductModal' import ComponentModal from './Component/ComponentModal' import PartModal from './Part/PartModal' + import ProcessSpecVersionModal from './ProcessSpecVersion/ProcessSpecVersionModal' import ProcessModal from './Process/ProcessModal' import ProcessStepModal from './ProcessStep/ProcessStepModal' import AssignPermissionModal from './Permission/AssignPermissionModal' @@ -76,6 +80,7 @@ AssignPermissionModal, ProcessStepModal, ProcessModal, + ProcessSpecVersionModal, PartModal, ComponentModal, ProductModal, @@ -89,6 +94,7 @@ treeDataSource: [], selectedKeys: [], expandedKeys: [], + beforeSearchExpandedKeys: [], searchValue: '', dataList: [], autoExpandParent: true, @@ -116,7 +122,7 @@ this.treeDataSource = res.list this.generateList(this.treeDataSource) // this.expandedKeys = this.allTreeKeys - if (this.expandedKeys.length === 0) this.expandedKeys = [this.treeDataSource[0].id] + if (this.expandedKeys.length === 0) this.expandedKeys = this.beforeSearchExpandedKeys = [this.treeDataSource[0].id] } else { this.$message.warn(res.message) } @@ -152,27 +158,28 @@ // 鏍戣妭鐐瑰彸閿崟鍑昏彍鍗曚腑鍒犻櫎鎸夐挳鏃惰Е鍙� handleDelete() { const that = this - that.$confirm({ + const { rightClickSelected: { id, type }, $confirm, url, $notification } = that + $confirm({ title: '鎻愮ず', content: '纭鍒犻櫎姝ゆ潯璁板綍鍚楋紵', okText: '纭', okType: 'danger', cancelText: '鍙栨秷', onOk: () => { - if (!this.url.delete) { + if (!url.delete) { this.$message.error('璇疯缃畊rl.delete灞炴��!') return } - deleteAction(that.url.delete, { id: this.rightClickSelected.id }) + deleteAction(url.delete + `/${id}/${type}`) .then((res) => { if (res.success) { that.getTreeDataByApi() - that.$notification.success({ + $notification.success({ message: '娑堟伅', description: res.message }) } else { - that.$notification.warning({ + $notification.warning({ message: '娑堟伅', description: res.message }) @@ -202,27 +209,36 @@ * @param expandedKeys 灞曞紑椤筴ey */ handleTreeExpand(expandedKeys) { - this.expandedKeys = expandedKeys + this.expandedKeys = this.beforeSearchExpandedKeys = expandedKeys this.autoExpandParent = false }, /* 杈撳叆鏌ヨ鍐呭鍙樺寲鏃惰Е鍙� */ handleSearchInputChange() { let search = this.searchInput - let expandedKeys = this.dataList - .map(item => { - if (item.title != null) { - if (item.title.indexOf(search) > -1) { - return this.getParentKey(item.key, this.treeDataSource) + let expandedKeys + let autoExpandParent + if (search !== '') { + expandedKeys = this.dataList + .map(item => { + if (item.title != null) { + if (item.title.indexOf(search) > -1) { + return this.getParentKey(item.key, this.treeDataSource) + } + return null } - return null - } - }) - .filter((item, i, self) => item && self.indexOf(item) === i) + }) + .filter((item, i, self) => item && self.indexOf(item) === i) + autoExpandParent = true + } else { + expandedKeys = this.beforeSearchExpandedKeys + autoExpandParent = false + } + Object.assign(this, { expandedKeys, searchValue: search, - autoExpandParent: true + autoExpandParent }) }, @@ -283,6 +299,9 @@ case 3: treeNode.slots = { icon: 'part' } break + case 4: + treeNode.slots = { icon: 'processSpecVersion' } + break case 5: treeNode.slots = { icon: 'process' } break -- Gitblit v1.9.3