From 8e5874a30ae9b194968393b2399bbba193eaa313 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期三, 20 十一月 2024 17:14:00 +0800
Subject: [PATCH] 项目管理

---
 src/views/safetyReview/projectManage/process.vue |  107 +++++++++++++++++++++++++++++++++--------------------
 1 files changed, 67 insertions(+), 40 deletions(-)

diff --git a/src/views/safetyReview/projectManage/process.vue b/src/views/safetyReview/projectManage/process.vue
index cd85d77..c904f21 100644
--- a/src/views/safetyReview/projectManage/process.vue
+++ b/src/views/safetyReview/projectManage/process.vue
@@ -27,7 +27,7 @@
           <div :style="'height:' + middleContentHeight + 'px'" style="overflow-y: scroll;">
             <basic-info ref="basicRef" v-if="selectedObj.id === 1" :projectId="projectId" @getNextStatus="getNextStatus"></basic-info>
             <expert ref="expertRef" v-if="selectedObj.id === 2" :projectId="projectId" @getNextStatus="getNextStatus"></expert>
-            <approval ref="approvalRef" v-if="selectedObj.id === 3" :projectId="projectId" @getNextStatus="getNextStatus"></approval>
+            <approval ref="approvalRef" v-if="selectedObj.id === 3" :projectId="projectId" @getNextStatus="getNextStatus" @back-status="backStatus" ></approval>
             <archive ref="archiveRef" v-if="selectedObj.id === 4" :projectId="projectId" @getNextStatus="getNextStatus"></archive>
 
           </div>
@@ -58,6 +58,7 @@
 import archive from  './components/projectArchive.vue'
 import {ElMessage} from "element-plus";
 import {get} from "@vueuse/core";
+import {getProjectInfo} from "@/api/projectManage";
 
 const selectedObj = ref({})
 const nextObj = ref({})
@@ -172,66 +173,92 @@
   }
 }
 
-const getStatus = (id) => {
+const getStatus = async (id) => {
   //projectId 项目id,根据id获取当前状态
   projectId.value = Number(id)
-  //调接口
-  const res = projectId.value
-  //当前项目状态,编辑、查看的时候定位到最新状态
-  newProgress.value = res
-  menuList.value.forEach(item => {
-    if(projectStatus.value === 'edit'){
-      if(item.id <= res){
-        item.status = 2
+  const res = await getProjectInfo(projectId.value)
+  if(res.code === 200) {
+    //当前项目状态,编辑、查看的时候定位到最新状态
+    newProgress.value = res.data.step
+    menuList.value.forEach(item => {
+      if(projectStatus.value === 'edit'){
+        if(item.id <=  newProgress.value){
+          item.status = 2
+        }
+        if(item.id ==  newProgress.value){
+          selectedObj.value =item
+          setTimeout(() => {
+            goRouter(selectedObj.value.id)
+          }, 10)
+        }
+        if(item.id ==  newProgress.value +1){
+          item.status = 1
+        }
+      }else if(projectStatus.value === 'view'){
+        if(item.id <=  newProgress.value){
+          item.status = 2
+        }
+        if(item.id ==  newProgress.value){
+          selectedObj.value =item
+          setTimeout(() => {
+            goRouter(selectedObj.value.id)
+          }, 10)
+        }
       }
-      if(item.id == res){
+      if( newProgress.value == 4 && item.id == 4){
+        item.status = 2
         selectedObj.value =item
         setTimeout(() => {
           goRouter(selectedObj.value.id)
         }, 10)
       }
-      if(item.id == res +1){
-        item.status = 1
-      }
-    }else if(projectStatus.value === 'view'){
-      if(item.id <= res){
-        item.status = 2
-      }
-      if(item.id == res){
-        selectedObj.value =item
-        setTimeout(() => {
-          goRouter(selectedObj.value.id)
-        }, 10)
-      }
-    }
-    if(res == 4 && item.id == 4){
-      item.status = 2
-      selectedObj.value =item
-      setTimeout(() => {
-        goRouter(selectedObj.value.id)
-      }, 10)
-    }
-  })
+    })
+  }
+  else {
+    ElMessage.warning(res.message)
+  }
   console.log('menuList.value',menuList.value)
 }
-const getNextStatus = (id) => {
+const getNextStatus = async (id) => {
+  projectId.value = Number(id)
+  //调接口
+  const res = await getProjectInfo(projectId.value)
+  if(res.code === 200) {
+    newProgress.value = res.data.step
+    //定位到下一步状态
+    menuList.value.forEach(item => {
+      if(item.id <=  newProgress.value){
+        item.status = 2
+      }else if(item.id ==  newProgress.value + 1){
+        item.status = 1
+        selectedObj.value =item
+      }
+
+      if( newProgress.value == 4 && item.id == 4){
+        item.status = 2
+        selectedObj.value =item
+      }
+    })
+  }else {
+    ElMessage.warning(res.message)
+  }
+}
+
+const backStatus = (id) => {
   //projectId 项目id,根据id获取当前状态
   projectId.value = Number(id)
   //调接口
   const res = projectId.value
   newProgress.value = res
-  //定位到下一步状态
+  //审核不通过状态回到第二步
   menuList.value.forEach(item => {
     if(item.id <= res){
       item.status = 2
     }else if(item.id == res + 1){
       item.status = 1
       selectedObj.value =item
-    }
-
-    if(res == 4 && item.id == 4){
-      item.status = 2
-      selectedObj.value =item
+    }else if(item.id > res + 1){
+      item.status = 0
     }
   })
 }

--
Gitblit v1.9.2