From bfdbef4bd7254e42ebac1dd1ab9b00f814ea7432 Mon Sep 17 00:00:00 2001
From: qsh <>
Date: Mon, 31 Mar 2025 12:12:41 +0800
Subject: [PATCH] sc
---
src/api/okr/okr.js | 9 +++++
.../OKR/Management/Components/AllTarget.vue | 32 +++++++++++----
.../OKR/Management/Components/DialogOkr.vue | 4 +-
.../Management/Components/DialogOkrInfo.vue | 14 ++++++-
.../OKR/Management/Components/OkrTable.vue | 39 +++++++++++++++++--
5 files changed, 85 insertions(+), 13 deletions(-)
diff --git a/src/api/okr/okr.js b/src/api/okr/okr.js
index e72bdc3..1f1d4fb 100644
--- a/src/api/okr/okr.js
+++ b/src/api/okr/okr.js
@@ -81,3 +81,12 @@ export const getDefaultOkrOptions = () => {
headers: { 'instance-id': 1016 }
})
}
+
+// 更新OKR进度
+export const updateOkrProgress = (data) => {
+ return request.put({
+ url: '/admin-api/okr/node/progress/update',
+ data,
+ headers: { 'instance-id': 1016 }
+ })
+}
diff --git a/src/views/OKR/Management/Components/AllTarget.vue b/src/views/OKR/Management/Components/AllTarget.vue
index 0d31bb0..e9bdf56 100644
--- a/src/views/OKR/Management/Components/AllTarget.vue
+++ b/src/views/OKR/Management/Components/AllTarget.vue
@@ -10,7 +10,7 @@
:default-expand-all="false"
check-strictly
style="width: 400px"
- @change="getOkrList"
+ @change="nodeChange"
/>
新建节点
@@ -23,7 +23,7 @@
-
+
@@ -35,7 +35,7 @@ import DialogOkrInfo from './DialogOkrInfo.vue'
import DialogOkr from './DialogOkr.vue'
import { getAllNodeTree, getAllOkrPage } from '@/api/okr/okr'
-import { listToTree } from '@/utils/tree'
+import { listToTree, findNode } from '@/utils/tree'
const message = useMessage()
@@ -56,6 +56,10 @@ onMounted(() => {
handleSearchPeroid()
})
+// 当前是否是叶子节点
+// 如果不是叶子节点,则表格数据不可修改
+const isCurrentLeafNode = ref(false)
+
function handleSearchPeroid() {
getAllNodeTree().then((resp) => {
peroidList.value = listToTree(resp.tree, {
@@ -63,11 +67,23 @@ function handleSearchPeroid() {
pid: 'parentId',
children: 'children'
})
- searchForm.value.nodeId = resp.nodeId
- getOkrList()
+ nodeChange(resp.nodeId)
})
}
+function nodeChange(nodeId) {
+ searchForm.value.nodeId = nodeId
+ getOkrList()
+ const currentNode = findNode(peroidList.value, (node) => {
+ return node.nodeId == nodeId
+ })
+ if (!currentNode.children || currentNode.children.length == 0) {
+ isCurrentLeafNode.value = true
+ } else {
+ isCurrentLeafNode.value = false
+ }
+}
+
function getOkrList() {
getAllOkrPage(searchForm.value).then((resp) => {
const list = resp
@@ -88,8 +104,10 @@ function handleEditOkr() {
}
function handleUpdateProcess() {
- message.success('更新进度成功')
- getOkrList()
+ okrTableRef.value.updateProcess(searchForm.value.nodeId).then(() => {
+ message.success('更新成功')
+ getOkrList()
+ })
}
const dialogOkr = ref(null)
diff --git a/src/views/OKR/Management/Components/DialogOkr.vue b/src/views/OKR/Management/Components/DialogOkr.vue
index 8df6a1b..845d5fc 100644
--- a/src/views/OKR/Management/Components/DialogOkr.vue
+++ b/src/views/OKR/Management/Components/DialogOkr.vue
@@ -18,7 +18,7 @@
ork落地
【节点】
- {{ nodeInfo.nodeName }}
+ {{ nodeInfo.allNodeName }}
@@ -248,7 +248,7 @@
v-for="item in nodeRecords"
:key="item.recordId"
placement="bottom"
- :timestamp="formatDate(item.createTime)"
+ :timestamp="formatDate(item.createTime, 'YYYY-MM-DD HH:mm:ss')"
color="#30d1fc"
>
{{ item.creator }}
diff --git a/src/views/OKR/Management/Components/DialogOkrInfo.vue b/src/views/OKR/Management/Components/DialogOkrInfo.vue
index d3003a0..9117993 100644
--- a/src/views/OKR/Management/Components/DialogOkrInfo.vue
+++ b/src/views/OKR/Management/Components/DialogOkrInfo.vue
@@ -1,6 +1,5 @@
item.value == kr.keyResultName)
+ if (obj) {
+ kr.isSys = true
+ } else {
+ kr.isSys = false
+ }
+ }
+}
+
async function handleSave() {
// 校验表单
if (!formRef.value) return
diff --git a/src/views/OKR/Management/Components/OkrTable.vue b/src/views/OKR/Management/Components/OkrTable.vue
index 5d141ce..d247c59 100644
--- a/src/views/OKR/Management/Components/OkrTable.vue
+++ b/src/views/OKR/Management/Components/OkrTable.vue
@@ -28,7 +28,7 @@
当前进度:
- {{ row.currentValue }}
+ {{ row.currentValue }}