|
@@ -16,7 +16,7 @@
|
|
|
</div>
|
|
|
<div class="hc-tree-box">
|
|
|
<div class="hc-tree-back-to">
|
|
|
- <el-link type="primary">回到上一次填报部位</el-link>
|
|
|
+ <el-link type="primary" @click="gobackHistory">回到上一次填报部位</el-link>
|
|
|
<el-link type="warning" class="ml-4" @click="wbsMapTypeTab">导图结构填报</el-link>
|
|
|
</div>
|
|
|
<div class="hc-search-tree-val">
|
|
@@ -537,6 +537,7 @@ import HcTreeNode from './components/HcTreeNode.vue'
|
|
|
import { getTokenHeader } from '~src/api/request/header'
|
|
|
import { getStoreValue, setStoreValue } from '~src/utils/storage'
|
|
|
import {
|
|
|
+clog,
|
|
|
deepClone,
|
|
|
formValidate,
|
|
|
getArrValue,
|
|
@@ -599,51 +600,7 @@ 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)
|
|
|
-// } 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(() => [
|
|
@@ -924,13 +881,39 @@ const wbsElTreeClick = ({ node, data, keys }) => {
|
|
|
}
|
|
|
setStoreValue('wbsTreeExpandKeys', keys)
|
|
|
TreeAutoExpandKeys.value = keys || []
|
|
|
+ saveHistory(keys.join(','))
|
|
|
getTableDataAll()
|
|
|
}
|
|
|
//树加载完成
|
|
|
const ElTreeNodeLoading = () => {
|
|
|
treeLoading.value = false
|
|
|
}
|
|
|
-
|
|
|
+//保存用户填报历史
|
|
|
+const saveHistory = async (endNode)=>{
|
|
|
+ await wbsApi.saveUserHistory({
|
|
|
+ contractId: contractId.value,
|
|
|
+ projectId: projectId.value,
|
|
|
+ endNode,
|
|
|
+ })
|
|
|
+}
|
|
|
+//回到上次填报历史
|
|
|
+const gobackHistory = async ()=>{
|
|
|
+ isSearchTree.value = false
|
|
|
+ const { error, code, data, msg } = await wbsApi.getUserHistory({
|
|
|
+ contractId: contractId.value,
|
|
|
+ projectId: projectId.value,
|
|
|
+ })
|
|
|
+ if (!error && code === 200) {
|
|
|
+ TreeAutoExpandKeys.value = data['endNode'].split(',') || []
|
|
|
+ //重新加载左边树
|
|
|
+ isShowLeft.value = false
|
|
|
+ setTimeout(()=>{
|
|
|
+ isShowLeft.value = true
|
|
|
+ }, 500)
|
|
|
+ } else {
|
|
|
+ window.$message.warning(msg)
|
|
|
+ }
|
|
|
+}
|
|
|
//树菜单被点击
|
|
|
const ElTreeMenuClick = async ({ key, node, data, keys }) => {
|
|
|
nodeItemInfo.value = node
|