From b215fb6dfd4ede3cb1b08985bb04ef5803a52454 Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: Wed, 17 Jan 2024 16:32:12 +0800
Subject: [PATCH] bug修改
---
src/views/safetyReview/projectManage/process.vue | 338 +++++++++++++++++++++++++++++++++-----------------------
1 files changed, 198 insertions(+), 140 deletions(-)
diff --git a/src/views/safetyReview/projectManage/process.vue b/src/views/safetyReview/projectManage/process.vue
index f5fecd4..e40806e 100644
--- a/src/views/safetyReview/projectManage/process.vue
+++ b/src/views/safetyReview/projectManage/process.vue
@@ -15,8 +15,8 @@
<span class="text-eclipse" style="margin-left: 5px">{{item.name}}</span>
</div>
</div>
- <div v-for="child in item.subMenus" :key="child.id">
- <div class="down-item" :class="{itemActive: child.status === 1 || child.status === 3, itemPrev: child.status === 2}" @click="chooseSubMenu(child,true)">
+ <div v-for="child in item.subMenus" :key="child.id" @click="chooseSubMenu(child,true)">
+ <div class="down-item" :class="{itemActive: child.status === 1 || child.status === 3, itemPrev: child.status === 2}">
<div class="item-icon-status0" v-if="child.status === 0">{{child.id}}</div>
<div class="item-icon-status0 item-icon-status1" v-else-if="child.status === 1 || (selectedObj.status === 3 && child.id === selectedObj.id)">{{child.id}}</div>
<div class="item-icon-status0 item-icon-status2" v-else-if="child.status === 2 "><img :src="itemStatus2Png"></div>
@@ -38,16 +38,16 @@
<div class="card-header">{{selectedObj.id}}- {{selectedObj.name}}</div>
<div class="card-content">
<div :style="'height:' + middleContentHeight + 'px'" style="overflow-y: scroll;">
- <rickAnalysis ref="riskRef" v-if="selectedObj.id === 2" @getNextStatus="getNextStatus"></rickAnalysis>
- <contract-manage ref="contractMngRef" v-if="selectedObj.id === 1" @getNextStatus="getNextStatus"></contract-manage>
+ <rickAnalysis ref="riskRef" v-if="selectedObj.id === 1" @getNextStatus="getNextStatus"></rickAnalysis>
+ <contract-manage ref="contractMngRef" v-if="selectedObj.id === 2" @getNextStatus="getNextStatus"></contract-manage>
<evaluate-task-notice ref="evaluteRef" v-if="selectedObj.id === 3" @getNextStatus="getNextStatus"></evaluate-task-notice>
<evaluate-plan ref="evalPlanRef" v-if="selectedObj.id === 4" @getNextStatus="getNextStatus"></evaluate-plan>
</div>
<div style="display: flex;align-items: center;justify-content: center;margin-bottom: -20px">
<el-button type="primary" v-if="selectedObj.id !== 1" style="width: 80px" @click="back">上一步</el-button>
- <el-button type="warning" style="width: 80px" v-if="projectStatus === 'edit' && selectedObj.status !== 1" @click="clickEdit">变更</el-button>
-<!-- <el-button type="warning" style="width: 80px" v-if="selectedObj.status === 1" @click="save">暂存</el-button>-->
- <el-button type="primary" style="width: 80px" @click="next">下一步</el-button>
+ <el-button type="warning" style="width: 80px" v-if="(projectStatus === 'add' && selectedObj.status === 1)||(projectStatus === 'edit' && selectedObj.status === 1) " @click="save">保存</el-button>
+ <el-button type="warning" style="width: 80px" v-if="(projectStatus === 'edit' && selectedObj.status !== 1) || (projectStatus === 'add' && selectedObj.status !== 1) " @click="clickEdit">变更</el-button>
+ <el-button type="primary" style="width: 80px" v-if="selectedObj.id !== 14" @click="next">下一步</el-button>
</div>
</div>
</el-card>
@@ -232,17 +232,18 @@
if(item.id <= res.data){
item.status = 2
}
- if(item.id === res.data + 1){
- item.status = 4;
- nextObj.value = item;
+ if(projectStatus.value !== 'view'){
+ if(item.id === res.data + 1){
+ item.status = 4;
+ nextObj.value = item;
+ }
}
if(item.id === res.data){
item.status = 3;
selectedObj.value =item;
- setTimeout(() => {
- goRouter(selectedObj.value.id)
- }, 10)
-
+ setTimeout(() => {
+ goRouter(selectedObj.value.id)
+ }, 10)
}
})
menuList.value[0].status = 1;
@@ -257,13 +258,16 @@
if(item.id <= res.data) {
item.status = 2
}
- if(item.id === res.data + 1){
- item.status = 4;
- nextObj.value = item;
+ if(projectStatus.value !== 'view'){
+ if(item.id === res.data + 1){
+ item.status = 4;
+ nextObj.value = item;
+ }
}
if(item.id === res.data){
item.status = 3;
selectedObj.value =item;
+
setTimeout(() => {
goRouter(selectedObj.value.id)
}, 10)
@@ -283,9 +287,11 @@
if(item.id <= res.data) {
item.status = 2
}
- if(item.id === res.data + 1){
- item.status = 4;
- nextObj.value = item;
+ if(projectStatus.value !== 'view'){
+ if(item.id === res.data + 1){
+ item.status = 4;
+ nextObj.value = item;
+ }
}
if(item.id === res.data){
item.status = 3;
@@ -310,9 +316,11 @@
if(item.id <= res.data) {
item.status = 2
}
- if(item.id === res.data + 1){
- item.status = 4;
- nextObj.value = item;
+ if(projectStatus.value !== 'view'){
+ if(item.id === res.data + 1){
+ item.status = 4;
+ nextObj.value = item;
+ }
}
if(item.id === res.data){
item.status = 3;
@@ -339,9 +347,11 @@
if(item.id <= res.data) {
item.status = 2
}
- if(item.id === res.data + 1){
- item.status = 4;
- nextObj.value = item;
+ if(projectStatus.value !== 'view'){
+ if(item.id === res.data + 1){
+ item.status = 4;
+ nextObj.value = item;
+ }
}
if(item.id === res.data){
item.status = 3;
@@ -429,6 +439,11 @@
selectedObj.value.status = 1;
nextObj.value.status = 2;
nextObj.value = val;
+ // if(flag){
+ // setTimeout(() => {
+ // goRouter(selectedObj.value.id)
+ // }, 10)
+ // }
//跳转
}, 10)
}
@@ -446,20 +461,25 @@
}else if (selectedObj.value.id+ 1 >11){
nextMenu(4)
}
- } else {
- //下一步——保存
- goRouter(selectedObj.value.id,'add')
+ }else {
+ setTimeout(() => {
+ isShowMenu.value = false;
+ ElMessage({
+ type: 'warning',
+ message: '请按顺序操作,未完成步骤无法查看!'
+ });
+ }, 10)
}
-
- setTimeout( () => {
- goRouter(selectedObj.value.id)
- }, 100)
+ //
+ // setTimeout( () => {
+ // goRouter(selectedObj.value.id)
+ // }, 100)
}
const nextMenu = (id) => {
menuList.value[id].subMenus.forEach( item => {
if(item.id === selectedObj.value.id + 1){
- chooseSubMenu(item,false);
+ chooseSubMenu(item,true);
}
})
}
@@ -467,7 +487,7 @@
const backMenu = (id) => {
menuList.value[id].subMenus.forEach(async item => {
if(item.id === selectedObj.value.id - 1){
- await chooseSubMenu(item,false);
+ await chooseSubMenu(item,true);
}
})
}
@@ -485,110 +505,146 @@
}else if (selectedObj.value.id-1 >11){
backMenu(4)
}
- setTimeout( () => {
- goRouter(selectedObj.value.id)
- // switch (selectedObj.value.id){
- // case 1:
- // if(projectStatus.value === 'view'){
- // riskRef.value.riskOpen('detail',projectId.value);
- // }else {
- // riskRef.value.riskOpen('edit',projectId.value);
- // }
- // break;
- // case 2:
- //
- // break;
- // case 3:
- //
- // break;
- // case 4:
- //
- // break;
- // case 5:
- //
- // break;
- // case 6:
- //
- // break;
- // case 7:
- //
- // break;
- // case 8:
- //
- // break;
- // case 9:
- //
- // break;
- // case 10:
- //
- // break;
- // case 11:
- //
- // break;
- // case 12:
- //
- // break;
- // case 13:
- //
- // break;
- // case 14:
- //
- // break;
- // }
- }, 100)
+ // setTimeout( () => {
+ // goRouter(selectedObj.value.id)
+ // }, 100)
}
const clickEdit = () => {
+
goRouter(selectedObj.value.id,'clickEdit')
- // switch (selectedObj.value.id){
- // case 1:
- // riskRef.value.riskOpen('clickEdit',projectId.value);
- // break;
- // case 2:
- //
- // break;
- // case 3:
- //
- // break;
- // case 4:
- //
- // break;
- // case 5:
- //
- // break;
- // case 6:
- //
- // break;
- // case 7:
- //
- // break;
- // case 8:
- //
- // break;
- // case 9:
- //
- // break;
- // case 10:
- //
- // break;
- // case 11:
- //
- // break;
- // case 12:
- //
- // break;
- // case 13:
- //
- // break;
- // case 14:
- //
- // break;
- // }
}
-const getNextStatus = (val) => {
- getStatus(val);
+const getNextStatus = async (val) => {
+ projectId.value = val;
+ console.log("val",val)
+ const res = await getProjectStatus(val);
+ if(res.code == 200){
+ if(res.data <=4){
+ menuList.value[0].subMenus.forEach(item => {
+ if(item.id <= res.data){
+ item.status = 2
+ }
+ if(item.id === res.data + 1){
+ item.status = 1;
+ selectedObj.value =item;
+ nextObj.value = item;
+ }
+ // else if(item.id === res.data ){
+ // item.status = 3;
+ // selectedObj.value =item;
+ // }else if(item.id === res.data + 1){
+ // item.status = 4;
+ // nextObj.value = item;
+ // }
+ })
+ menuList.value[0].status = 1;
+ console.log("menu11",menuList.value)
+ }
+ if(res.data >=4 && res.data<=6){
+ setMenuList(0)
+ menuList.value[1].subMenus.forEach(item => {
+ if(item.id <= res.data) {
+ item.status = 2
+ }
+ if(item.id === res.data + 1){
+ item.status = 1;
+ selectedObj.value =item;
+ nextObj.value = item;
+ }
+ // if(item.id === res.data){
+ // item.status = 3;
+ // selectedObj.value =item;
+ // }
+ })
+ menuList.value[0].status = 2;
+ menuList.value[1].status = 1;
+ console.log("menu22",menuList.value)
+ }
+ if(res.data >= 6 && res.data <= 9){
+ setMenuList(0);
+ setMenuList(1);
+ menuList.value[2].subMenus.forEach(item => {
+ if(item.id <= res.data) {
+ item.status = 2
+ }
+ if(item.id === res.data + 1){
+ item.status = 1;
+ selectedObj.value =item;
+ nextObj.value = item;
+ }
+ // if(item.id === res.data){
+ // item.status = 3;
+ // selectedObj.value =item;
+ // }
+ })
+ menuList.value[0].status = 2;
+ menuList.value[1].status = 2;
+ menuList.value[2].status = 1;
+ }
+ if(res.data >= 9 && res.data <=11){
+ setMenuList(0);
+ setMenuList(1);
+ setMenuList(2);
+ menuList.value[3].subMenus.forEach(item => {
+ if(item.id <= res.data) {
+ item.status = 2
+ }
+ if(item.id === res.data + 1){
+ item.status = 1;
+ selectedObj.value =item;
+ nextObj.value = item;
+ }
+ // if(item.id === res.data){
+ // item.status = 3;
+ // selectedObj.value =item;
+ // }
+ })
+ menuList.value[0].status = 2;
+ menuList.value[1].status = 2;
+ menuList.value[2].status = 2;
+ menuList.value[3].status = 1;
+ }
+ if(res.data >= 11){
+ setMenuList(0);
+ setMenuList(1);
+ setMenuList(2);
+ setMenuList(3);
+ // if(res.data === 11){
+ // menuList.value[3].subMenus[1].status = 3;
+ // }
+ menuList.value[4].subMenus.forEach(item => {
+ if(item.id <= res.data) {
+ item.status = 2
+ }
+ if(item.id === res.data + 1){
+ item.status = 1;
+ selectedObj.value =item;
+ nextObj.value = item;
+ }
+ // if(item.id === res.data){
+ // item.status = 3;
+ // selectedObj.value =item;
+ // }
+ menuList.value[0].status = 2;
+ menuList.value[1].status = 2;
+ menuList.value[2].status = 2;
+ menuList.value[3].status = 2;
+ menuList.value[4].status = 1;
+ if(res.data === 14 && res.data === item.id){
+ item.status = 3;
+ menuList.value[4].status = 2;
+ selectedObj.value =item;
+ }
+ })
+
+ }
+ }
}
+const save = () => {
+ goRouter(selectedObj.value.id,'add')
+
+}
const goRouter = (val,type) => {
switch (val){
case 1:
@@ -597,9 +653,9 @@
}else if (type === 'clickEdit'){
riskRef.value.riskOpen('clickEdit',projectId.value);
}else {
- if(projectStatus.value === 'view'){
+ if(projectStatus.value === 'view' || projectStatus.value === 'add'){
riskRef.value.riskOpen('detail',projectId.value);
- }else {
+ }else if(projectStatus.value === 'edit'){
riskRef.value.riskOpen('edit',projectId.value);
}
}
@@ -607,13 +663,13 @@
break;
case 2:
if(type === 'add'){
- contractMngRef.value.riskOpen('add','');
+ contractMngRef.value.riskOpen('add',projectId.value);
}else if (type === 'clickEdit'){
contractMngRef.value.riskOpen('clickEdit',projectId.value);
}else {
- if(projectStatus.value === 'view'){
+ if(projectStatus.value === 'view' || projectStatus.value === 'add'){
contractMngRef.value.riskOpen('detail',projectId.value);
- }else {
+ }else if(projectStatus.value === 'edit'){
contractMngRef.value.riskOpen('edit',projectId.value);
}
}
@@ -621,13 +677,13 @@
break;
case 3:
if(type === 'add'){
- evaluteRef.value.riskOpen('add','');
+ evaluteRef.value.riskOpen('add',projectId.value);
}else if (type === 'clickEdit'){
evaluteRef.value.riskOpen('clickEdit',projectId.value);
}else {
- if(projectStatus.value === 'view'){
+ if(projectStatus.value === 'view' || projectStatus.value === 'add'){
evaluteRef.value.riskOpen('detail',projectId.value);
- }else {
+ }else if(projectStatus.value === 'edit'){
evaluteRef.value.riskOpen('edit',projectId.value);
}
}
@@ -776,6 +832,8 @@
border-radius: 50%;
background: #b9c2d5;
margin-right: 10px;
+ min-width: 21px;
+ min-height: 21px;
}
.item-icon-status1{
color: #3b75ff;
--
Gitblit v1.9.2