sc
This commit is contained in:
@@ -86,6 +86,7 @@ function handleSearchPeroid() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function nodeChange(nodeId) {
|
function nodeChange(nodeId) {
|
||||||
|
if (nodeId) {
|
||||||
searchForm.value.nodeId = nodeId
|
searchForm.value.nodeId = nodeId
|
||||||
getOkrList()
|
getOkrList()
|
||||||
const currentNode = findNode(peroidList.value, (node) => {
|
const currentNode = findNode(peroidList.value, (node) => {
|
||||||
@@ -98,6 +99,7 @@ function nodeChange(nodeId) {
|
|||||||
isCurrentLeafNode.value = false
|
isCurrentLeafNode.value = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function getOkrList() {
|
function getOkrList() {
|
||||||
getAllOkrPage(searchForm.value).then((resp) => {
|
getAllOkrPage(searchForm.value).then((resp) => {
|
||||||
|
|||||||
@@ -30,9 +30,11 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<vue3-tree-org
|
<vue3-tree-org
|
||||||
|
ref="treeOrgRef"
|
||||||
:data="dataList"
|
:data="dataList"
|
||||||
center
|
center
|
||||||
collapsable
|
collapsable
|
||||||
|
:default-expand-keys="lastExpendKeys"
|
||||||
:props="treeProps"
|
:props="treeProps"
|
||||||
@on-node-click="handleClickNode"
|
@on-node-click="handleClickNode"
|
||||||
>
|
>
|
||||||
@@ -74,7 +76,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</vue3-tree-org>
|
</vue3-tree-org>
|
||||||
<DialogOkr ref="dialogOkr" @edit="handleEditOkr" />
|
<DialogOkr ref="dialogOkr" @edit="handleEditOkr" />
|
||||||
<DialogOkrInfo ref="dialogOkrInfo" @close="openOkr" />
|
<DialogOkrInfo ref="dialogOkrInfo" @close="openOkr" @success="resetTreeData" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -89,6 +91,7 @@ import { listToTree } from '@/utils/tree'
|
|||||||
|
|
||||||
const dataList = ref({})
|
const dataList = ref({})
|
||||||
const helpDataList = ref([])
|
const helpDataList = ref([])
|
||||||
|
const lastExpendKeys = ref([])
|
||||||
const treeProps = {
|
const treeProps = {
|
||||||
children: 'children',
|
children: 'children',
|
||||||
label: 'nodeName',
|
label: 'nodeName',
|
||||||
@@ -106,6 +109,7 @@ const peroidList = ref([])
|
|||||||
handleSearchPeroid()
|
handleSearchPeroid()
|
||||||
|
|
||||||
function handleSearchPeroid() {
|
function handleSearchPeroid() {
|
||||||
|
lastExpendKeys.value = []
|
||||||
getOkrRelationTree().then((resp) => {
|
getOkrRelationTree().then((resp) => {
|
||||||
peroidList.value = resp
|
peroidList.value = resp
|
||||||
if (resp && resp.length && !searchForm.value.nodeId) {
|
if (resp && resp.length && !searchForm.value.nodeId) {
|
||||||
@@ -116,6 +120,43 @@ function handleSearchPeroid() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const treeOrgRef = ref(null)
|
||||||
|
function resetTreeData() {
|
||||||
|
if (treeOrgRef.value) {
|
||||||
|
lastExpendKeys.value = treeOrgRef.value.getExpandKeys()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重新获取tree数据
|
||||||
|
getOkrRelationTree().then((resp) => {
|
||||||
|
peroidList.value = resp
|
||||||
|
if (resp && resp.length) {
|
||||||
|
if (!searchForm.value.nodeId) {
|
||||||
|
searchForm.value.nodeId = resp[0].nodeId
|
||||||
|
searchForm.value.nodeName = resp[0].nodeName
|
||||||
|
}
|
||||||
|
getOkrRelationTreeChildren({
|
||||||
|
nodeId: searchForm.value.nodeId
|
||||||
|
}).then((resp) => {
|
||||||
|
const tree = listToTree(resp, {
|
||||||
|
id: 'nodeId',
|
||||||
|
pid: 'parentId',
|
||||||
|
children: 'children'
|
||||||
|
})
|
||||||
|
// // 设置展开的keys
|
||||||
|
// if (treeOrgRef.value) {
|
||||||
|
// treeOrgRef.value.setExpandKeys(lastExpendKeys.value)
|
||||||
|
// }
|
||||||
|
helpDataList.value = resp
|
||||||
|
if (tree && tree.length) {
|
||||||
|
dataList.value = tree[0]
|
||||||
|
} else {
|
||||||
|
dataList.value = {}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
function getOkrList() {
|
function getOkrList() {
|
||||||
getOkrRelationTreeChildren({
|
getOkrRelationTreeChildren({
|
||||||
nodeId: searchForm.value.nodeId
|
nodeId: searchForm.value.nodeId
|
||||||
|
|||||||
Reference in New Issue
Block a user