|
@@ -23,7 +23,7 @@
|
|
</el-input>
|
|
</el-input>
|
|
</div>
|
|
</div>
|
|
<div v-loading="treeLoading" id="hc-tree-scrollbar" class="hc-tree-scrollbar" element-loading-text="获取数据中...">
|
|
<div v-loading="treeLoading" id="hc-tree-scrollbar" class="hc-tree-scrollbar" element-loading-text="获取数据中...">
|
|
- <HcTreeV2
|
|
|
|
|
|
+ <!-- <HcTreeV2
|
|
:isShow="isSearchTree"
|
|
:isShow="isSearchTree"
|
|
:datas="searchTreeData"
|
|
:datas="searchTreeData"
|
|
:height="searchTreeHeight"
|
|
:height="searchTreeHeight"
|
|
@@ -34,7 +34,19 @@
|
|
isType
|
|
isType
|
|
@menuTap="ElTreeMenuClick"
|
|
@menuTap="ElTreeMenuClick"
|
|
@nodeTap="wbsElTreeClick"
|
|
@nodeTap="wbsElTreeClick"
|
|
- />
|
|
|
|
|
|
+ /> -->
|
|
|
|
+ <el-scrollbar class="scroll-bar-right-16" v-show="isSearchTree">
|
|
|
|
+ <HcDataTree
|
|
|
|
+ :datas="searchTreeData"
|
|
|
|
+ :isMark="TreeMark"
|
|
|
|
+ :menus="ElTreeMenu"
|
|
|
|
+ isCounts
|
|
|
|
+ isType
|
|
|
|
+ @nodeTap="wbsElTreeClick"
|
|
|
|
+ :autoExpandKeys="TreeAutoExpandKeys"
|
|
|
|
+ defaultExpandAll />
|
|
|
|
+
|
|
|
|
+ </el-scrollbar>
|
|
<el-scrollbar class="scroll-bar-right-16" v-show="!isSearchTree">
|
|
<el-scrollbar class="scroll-bar-right-16" v-show="!isSearchTree">
|
|
<HcLazyTree
|
|
<HcLazyTree
|
|
ref="wbstree"
|
|
ref="wbstree"
|
|
@@ -710,67 +722,81 @@ const isSearchTree = ref(false)
|
|
const wbstreeKey = ref(Math.random())
|
|
const wbstreeKey = ref(Math.random())
|
|
const searchElTreeLoadNode = ref(true)
|
|
const searchElTreeLoadNode = ref(true)
|
|
const searchTreeHeight = ref()
|
|
const searchTreeHeight = ref()
|
|
-
|
|
|
|
const getSearchTreeData = async () => {
|
|
const getSearchTreeData = async () => {
|
|
- searchElTreeLoadNode.value = true
|
|
|
|
- const contractType = Number(contractInfo.value?.contractType)
|
|
|
|
- if (contractType === 2 || contractType === 3) {
|
|
|
|
- const {error, code, data} = await queryApi.getTreeallJl({
|
|
|
|
- contractId: contractId.value,
|
|
|
|
- })
|
|
|
|
- //判断状态
|
|
|
|
- if (!error && code === 200) {
|
|
|
|
- // searchTreeData.value = getArrValue(data)
|
|
|
|
- let searchobj = getObjValue(data)
|
|
|
|
- let searcharr = []
|
|
|
|
- for (let key in searchobj) {
|
|
|
|
- searcharr.push(searchobj[key][0])
|
|
|
|
- }
|
|
|
|
- searchTreeData.value = searcharr
|
|
|
|
- searchElTreeLoadNode.value = false
|
|
|
|
- treeLoading.value = false
|
|
|
|
- } else {
|
|
|
|
- treeLoading.value = false
|
|
|
|
- searchElTreeLoadNode.value = false
|
|
|
|
- searchTreeData.value = []
|
|
|
|
- }
|
|
|
|
- console.log(searchTreeData.value)
|
|
|
|
|
|
+ treeLoading.value = true
|
|
|
|
+ const {error, code, data} = await queryApi.getTreeNodeByQueryValueAndContractId({
|
|
|
|
+ contractId: contractId.value,
|
|
|
|
+ queryValue: searchTreeVal.value,
|
|
|
|
+ })
|
|
|
|
+ //判断状态
|
|
|
|
+ if (!error && code === 200) {
|
|
|
|
+ let treedata=getArrValue(data)
|
|
|
|
+ searchTreeData.value = treedata
|
|
|
|
+ treeLoading.value = false
|
|
|
|
+
|
|
} else {
|
|
} else {
|
|
- searchElTreeLoadNode.value = true
|
|
|
|
- const {error, code, data} = await queryApi.getTreeall({
|
|
|
|
- contractId: contractId.value,
|
|
|
|
- projectId: projectId.value,
|
|
|
|
- wbsId: projectInfo.value?.referenceWbsTemplateId
|
|
|
|
- })
|
|
|
|
- //判断状态
|
|
|
|
- if (!error && code === 200) {
|
|
|
|
- searchTreeData.value = getArrValue(data)
|
|
|
|
- searchElTreeLoadNode.value = false
|
|
|
|
- treeLoading.value = false
|
|
|
|
- } else {
|
|
|
|
- treeLoading.value = false
|
|
|
|
- searchElTreeLoadNode.value = false
|
|
|
|
- searchTreeData.value = []
|
|
|
|
- }
|
|
|
|
- console.log(searchTreeData.value)
|
|
|
|
|
|
+ treeLoading.value = false
|
|
|
|
+
|
|
|
|
+ searchTreeData.value = []
|
|
}
|
|
}
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
+// const getSearchTreeData = async () => {
|
|
|
|
+// searchElTreeLoadNode.value = true
|
|
|
|
+// const contractType = Number(contractInfo.value?.contractType)
|
|
|
|
+// if (contractType === 2 || contractType === 3) {
|
|
|
|
+// const {error, code, data} = await queryApi.getTreeallJl({
|
|
|
|
+// contractId: contractId.value,
|
|
|
|
+// })
|
|
|
|
+// //判断状态
|
|
|
|
+// if (!error && code === 200) {
|
|
|
|
+// // searchTreeData.value = getArrValue(data)
|
|
|
|
+// let searchobj = getObjValue(data)
|
|
|
|
+// let searcharr = []
|
|
|
|
+// for (let key in searchobj) {
|
|
|
|
+// searcharr.push(searchobj[key][0])
|
|
|
|
+// }
|
|
|
|
+// searchTreeData.value = searcharr
|
|
|
|
+// searchElTreeLoadNode.value = false
|
|
|
|
+// treeLoading.value = false
|
|
|
|
+// } else {
|
|
|
|
+// treeLoading.value = false
|
|
|
|
+// searchElTreeLoadNode.value = false
|
|
|
|
+// searchTreeData.value = []
|
|
|
|
+// }
|
|
|
|
+// console.log(searchTreeData.value)
|
|
|
|
+// } else {
|
|
|
|
+// searchElTreeLoadNode.value = true
|
|
|
|
+// const {error, code, data} = await queryApi.getTreeall({
|
|
|
|
+// contractId: contractId.value,
|
|
|
|
+// projectId: projectId.value,
|
|
|
|
+// wbsId: projectInfo.value?.referenceWbsTemplateId
|
|
|
|
+// })
|
|
|
|
+// //判断状态
|
|
|
|
+// if (!error && code === 200) {
|
|
|
|
+// searchTreeData.value = getArrValue(data)
|
|
|
|
+// searchElTreeLoadNode.value = false
|
|
|
|
+// treeLoading.value = false
|
|
|
|
+// } else {
|
|
|
|
+// treeLoading.value = false
|
|
|
|
+// searchElTreeLoadNode.value = false
|
|
|
|
+// searchTreeData.value = []
|
|
|
|
+// }
|
|
|
|
+// console.log(searchTreeData.value)
|
|
|
|
+// }
|
|
|
|
+// }
|
|
//监听
|
|
//监听
|
|
|
|
+//监听
|
|
|
|
+const searchTreeVal = ref('')
|
|
watch(() => [
|
|
watch(() => [
|
|
- useAppState.getCollapse,
|
|
|
|
-], ([Collapse]) => {
|
|
|
|
|
|
+ useAppState.getCollapse,searchTreeVal.value
|
|
|
|
+], ([Collapse,search]) => {
|
|
isCollapse.value = Collapse
|
|
isCollapse.value = Collapse
|
|
|
|
+ if(search.length==0){
|
|
|
|
+ isSearchTree.value=false
|
|
|
|
+ }
|
|
})
|
|
})
|
|
|
|
|
|
-watch(projectId, (val) => {
|
|
|
|
- if (val) {
|
|
|
|
- getSearchTreeData()
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- immediate: true
|
|
|
|
- }
|
|
|
|
-)
|
|
|
|
//渲染完成
|
|
//渲染完成
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
treeLoading.value = typeName === 'tree';
|
|
treeLoading.value = typeName === 'tree';
|
|
@@ -937,7 +963,7 @@ const nodeItemInfo = ref({})
|
|
const nodeDataInfo = ref({})
|
|
const nodeDataInfo = ref({})
|
|
|
|
|
|
|
|
|
|
-const searchTreeVal = ref('')
|
|
|
|
|
|
+
|
|
const searchTreeData = ref([])
|
|
const searchTreeData = ref([])
|
|
|
|
|
|
//回车
|
|
//回车
|
|
@@ -947,47 +973,20 @@ const searchTreeKeyUp = (e) => {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-const changetreelaod = (val) => {
|
|
|
|
- treeLoading.value = val
|
|
|
|
-}
|
|
|
|
|
|
+
|
|
const treeLoading = ref(false)
|
|
const treeLoading = ref(false)
|
|
|
|
+
|
|
const searchTreeClick = async () => {
|
|
const searchTreeClick = async () => {
|
|
if (searchTreeVal.value) {
|
|
if (searchTreeVal.value) {
|
|
searchTreeHeight.value = document.getElementById('hc-tree-scrollbar').offsetHeight;
|
|
searchTreeHeight.value = document.getElementById('hc-tree-scrollbar').offsetHeight;
|
|
isSearchTree.value = true
|
|
isSearchTree.value = true
|
|
//treeLoading.value = true
|
|
//treeLoading.value = true
|
|
- if (searchElTreeLoadNode.value === true) {
|
|
|
|
- treeLoading.value = true
|
|
|
|
- window?.$message?.warning('请加载完数据再次进行搜索')
|
|
|
|
- searchTreeVal.value=''
|
|
|
|
- } else {
|
|
|
|
- isSearchTree.value = true
|
|
|
|
- }
|
|
|
|
|
|
+ getSearchTreeData()
|
|
} else {
|
|
} else {
|
|
isSearchTree.value = false
|
|
isSearchTree.value = false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-// if (searchTreeVal.value) {
|
|
|
|
-// isSearchTree.value = true
|
|
|
|
-// treeLoading.value = true
|
|
|
|
-// const {error, code, data} = await wbsApi.searchContractTree({
|
|
|
|
-// contractId: contractId.value,
|
|
|
|
-// queryValue: searchTreeVal.value
|
|
|
|
-// })
|
|
|
|
-// //判断状态
|
|
|
|
-// if (!error && code === 200) {
|
|
|
|
-// searchTreeData.value = getArrValue(data)
|
|
|
|
-// treeLoading.value = false
|
|
|
|
-// } else {
|
|
|
|
-// treeLoading.value = false
|
|
|
|
-// searchTreeData.value = []
|
|
|
|
-// }
|
|
|
|
-// } else {
|
|
|
|
-// treeLoading.value = false
|
|
|
|
-// isSearchTree.value = false
|
|
|
|
-// }
|
|
|
|
-
|
|
|
|
//懒加载的数据
|
|
//懒加载的数据
|
|
const treeLoadNode = async ({node, item, level},resolve) => {
|
|
const treeLoadNode = async ({node, item, level},resolve) => {
|
|
let contractIdRelation = '', parentId = '', primaryKeyId = '';
|
|
let contractIdRelation = '', parentId = '', primaryKeyId = '';
|