|
@@ -42,7 +42,8 @@
|
|
|
</el-scrollbar>
|
|
|
<el-scrollbar v-show="!isSearchTree" class="scroll-bar-right-16">
|
|
|
<HcLazyTree
|
|
|
- ref="wbstree"
|
|
|
+ ref="wbstree"
|
|
|
+ is-load-menu
|
|
|
:auto-expand-keys="TreeAutoExpandKeys"
|
|
|
:is-mark="TreeMark"
|
|
|
:menus="ElTreeMenu"
|
|
@@ -55,6 +56,7 @@
|
|
|
@node-loading="ElTreeNodeLoading"
|
|
|
@node-tap="wbsElTreeClick"
|
|
|
@check="ElTreeNodeCheck"
|
|
|
+ @load-menu="loadMenu"
|
|
|
/>
|
|
|
</el-scrollbar>
|
|
|
</div>
|
|
@@ -770,8 +772,7 @@ const TreeMark = ref(false)
|
|
|
const setElTreeMenu = (contractType) => {
|
|
|
let newArr = []
|
|
|
if (contractType === 1) {
|
|
|
- //新增自定义节点功能
|
|
|
- newArr.push({ icon: 'add-circle', label: '新增自定义节点', key: 'add1' })
|
|
|
+
|
|
|
if (HcIsButton('wbs_tree_add')) {
|
|
|
newArr.push({ icon: 'add-circle', label: '新增节点', key: 'add' })
|
|
|
}
|
|
@@ -798,8 +799,7 @@ const setElTreeMenu = (contractType) => {
|
|
|
newArr.push({ icon: 'folder-shared', label: '工程划分', key: 'nodetree' })
|
|
|
}
|
|
|
} else if (contractType === 2) {
|
|
|
- //新增自定义节点功能
|
|
|
- newArr.push({ icon: 'add-circle', label: '新增自定义节点', key: 'add1' })
|
|
|
+
|
|
|
if (HcIsButton('wbs_tree_add')) {
|
|
|
newArr.push({ icon: 'add-circle', label: '新增节点', key: 'add' })
|
|
|
}
|
|
@@ -848,6 +848,7 @@ const treeLoadNode = async ({ node, item, level }, resolve) => {
|
|
|
contractIdRelation = nodeData?.contractIdRelation || ''
|
|
|
parentId = contractIdRelation ? nodeData?.primaryKeyId : nodeData?.id
|
|
|
primaryKeyId = nodeData?.id || ''
|
|
|
+
|
|
|
}
|
|
|
//获取数据
|
|
|
const { data } = await queryApi.queryWbsTreeData({
|
|
@@ -860,6 +861,7 @@ const treeLoadNode = async ({ node, item, level }, resolve) => {
|
|
|
tableOwner:authBtnTabKey.value,
|
|
|
})
|
|
|
treeLoading.value = false
|
|
|
+
|
|
|
resolve(getArrValue(data))
|
|
|
}
|
|
|
|
|
@@ -921,7 +923,9 @@ const ElTreeMenuClick = async ({ key, node, data, keys }) => {
|
|
|
TreeAutoExpandKeys.value = keys || []
|
|
|
setTreeMenuDataClick({ key, node, data })
|
|
|
}
|
|
|
-
|
|
|
+const treeMenuClick = (data)=>{
|
|
|
+ console.log(data, 'data1')
|
|
|
+}
|
|
|
//导图结构数据
|
|
|
const NodeTreeRef = ref(null)
|
|
|
|
|
@@ -1980,6 +1984,22 @@ const treeSelectNode = ref([])
|
|
|
const ElTreeNodeCheck = (_, { checkedKeys }) => {
|
|
|
treeSelectNode.value = getArrValue(checkedKeys)
|
|
|
}
|
|
|
+const loadMenu = ({ node, item, level }, resolve)=>{
|
|
|
+ setElTreeMenu(contractInfo.value?.contractType)
|
|
|
+ let menusArr = ElTreeMenu.value
|
|
|
+ console.log(node, item, level)
|
|
|
+ const { isCustom } = item
|
|
|
+ if (isCustom === 1) {
|
|
|
+ menusArr.unshift( { icon: 'add-circle', label: '新增自定义节点', key: 'add1' })
|
|
|
+ resolve(menusArr)
|
|
|
+ } else if (level === 1) {
|
|
|
+ menusArr = [ { icon: 'add-circle', label: '新增自定义节点', key: 'add1' }]
|
|
|
+ resolve(menusArr)
|
|
|
+ } else {
|
|
|
+
|
|
|
+ resolve(menusArr)
|
|
|
+ }
|
|
|
+}
|
|
|
|
|
|
//批量保存
|
|
|
const nodeSaveLoading = ref(false)
|