From 32025887cb0e13634d800330bb33e3533fd3f70d Mon Sep 17 00:00:00 2001 From: zhouwenxuan <1175765986@qq.com> Date: 星期四, 22 二月 2024 17:01:12 +0800 Subject: [PATCH] bug修改 --- src/views/safetyReview/projectManage/process.vue | 229 +++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 205 insertions(+), 24 deletions(-) diff --git a/src/views/safetyReview/projectManage/process.vue b/src/views/safetyReview/projectManage/process.vue index e40806e..65e713e 100644 --- a/src/views/safetyReview/projectManage/process.vue +++ b/src/views/safetyReview/projectManage/process.vue @@ -41,19 +41,30 @@ <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> + <evaluate-plan ref="evalPlanRef" v-if="selectedObj.id === 4" @getNextStatus="getNextStatus" :projectId="projectId"></evaluate-plan> + <employ-notice-record ref="employNoticeRcdRef" v-if="selectedObj.id === 5" @getNextStatus="getNextStatus" :projectId="projectId"></employ-notice-record> + <site-check-rcd ref="siteCheckRcdRef" v-if="selectedObj.id === 6" @getNextStatus="getNextStatus" :projectId="projectId"></site-check-rcd> + <inner-review ref="innerReviewRef" v-if="selectedObj.id === 7" @getNextStatus="getNextStatus"></inner-review> + <tech-leader-review ref="techReviewRef" v-if="selectedObj.id === 8" @getNextStatus="getNextStatus"></tech-leader-review> + <upload-review-rcd ref="uploadReviewRef" v-if="selectedObj.id === 9" @getNextStatus="getNextStatus" :projectId="projectId"></upload-review-rcd> + <rate-conclusion ref="rateConRef" v-if="selectedObj.id === 10" @getNextStatus="getNextStatus" :projectId="projectId"></rate-conclusion> + <process-ctrl-review ref="proCtrlRef" v-if="selectedObj.id === 11" @getNextStatus="getNextStatus" :projectId="projectId"></process-ctrl-review> + <project-archive ref="proArchRef" v-if="selectedObj.id === 12" @getNextStatus="getNextStatus" :projectId="projectId"></project-archive> + <sign-confirm ref="signConfirmRef" v-if="selectedObj.id === 13" @getNextStatus="getNextStatus" :projectId="projectId"></sign-confirm> + <confirm-end ref="confirmEndRef" v-if="selectedObj.id === 14" @getNextStatus="getNextStatus" :projectId="projectId"></confirm-end> </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 === '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="warning" style="width: 80px" v-if="(projectStatus === 'add' && selectedObj.status === 1 && selectedObj.id !== 14)||(projectStatus === 'edit' && selectedObj.status === 1 && selectedObj.id !== 14) " @click="save">保存</el-button> + <el-button type="warning" style="width: 80px" v-if="(projectStatus === 'edit' && selectedObj.status !== 1 && selectedObj.id !== 13 && selectedObj.id !== 14 && reportProcess != 14) || (projectStatus === 'add' && selectedObj.status !== 1 && selectedObj.id !== 14 && reportProcess != 14) " @click="clickEdit">变更</el-button> + <el-button type="warning" style="width: 80px" v-if="selectedObj.id === 14 && selectedObj.status === 1" @click="confirm">确认完结</el-button> <el-button type="primary" style="width: 80px" v-if="selectedObj.id !== 14" @click="next">下一步</el-button> </div> </div> </el-card> </div> <div class="bottom"> - <el-button type="primary" v-if="selectedObj.id === 1" plain @click="downloadFile"> + <el-button type="primary" v-if="selectedObj.id === 3" plain @click="downloadFile"> 评价任务通知书<el-icon class="el-icon--right"><Download /></el-icon> </el-button> </div> @@ -74,11 +85,21 @@ import status2Png from "@/assets/images/status2.png" import itemStatus2Png from "@/assets/images/itemStatus2.png" import { useRoute } from 'vue-router' -import {getProjectStatus} from "@/api/projectManage/project"; +import {getProjectStatus} from "@/api/projectManage/project" import ContractManage from "./components/contractManage"; -import EvaluateTaskNotice from "./components/evaluateTaskNotice"; +import EvaluateTaskNotice from "./components/evaluateTaskNotice" import EvaluatePlan from "./components/evaluatePlan"; - +import EmployNoticeRecord from "./components/employNoticeRecord" +import SiteCheckRcd from "./components/siteCheckRcd" +import InnerReview from "./components/innerReview" +import TechLeaderReview from "./components/techLeaderReview" +import UploadReviewRcd from "./components/uploadReviewRcd" +import RateConclusion from "./components/rateConclusion" +import ProcessCtrlReview from "./components/processCtrlReview" +import ProjectArchive from "./components/projectArchive" +import SignConfirm from "./components/signConfirm" +import ConfirmEnd from "./components/confirmEnd" +import Cookies from "js-cookie" const route = useRoute() const menuList = ref([ { @@ -161,8 +182,7 @@ id: 11, name: '过程控制负责人审核', status: 0 - }, - + } ] }, { @@ -191,12 +211,26 @@ const riskRef = ref(); const contractMngRef = ref() const evaluteRef = ref() -const isShowMenu = ref(false); +const evalPlanRef = ref() +const employNoticeRcdRef = ref() +const siteCheckRcdRef = ref() +const innerReviewRef = ref() +const techReviewRef = ref() +const uploadReviewRef = ref() +const rateConRef = ref() +const proCtrlRef = ref() +const proArchRef = ref() +const signConfirmRef = ref() +const confirmEndRef = ref() + +const isShowMenu = ref(false) const selectedObj = ref({}) -const middleHeight = ref(0); -const middleContentHeight = ref(0); -const projectId = ref(); -const projectStatus = ref(); +const middleHeight = ref(0) +const middleContentHeight = ref(0) +const projectId = ref() +const projectStatus = ref() +const toPath = ref(); +const reportProcess = ref(); onMounted(() => { middleHeight.value = window.innerHeight - 250; middleContentHeight.value = window.innerHeight - 385; @@ -208,6 +242,8 @@ if(route.query.type !== 'add'){ projectStatus.value = route.query.type; projectId.value = route.query.id; + toPath.value = route.query.toPath; + reportProcess.value = route.query.process; getStatus(projectId.value); }else { projectStatus.value = route.query.type; @@ -227,6 +263,11 @@ const getStatus = async (projectId) => { const res = await getProjectStatus(projectId); if(res.code == 200){ + reportProcess.value = res.data + let fiveObj = {} + if(toPath.value && toPath.value === 'toFive' ){ + fiveObj = menuList.value[1].subMenus[0] + } if(res.data <= 4 ){ menuList.value[0].subMenus.forEach(item => { if(item.id <= res.data){ @@ -254,6 +295,7 @@ if(res.data === 4){ menuList.value[0].subMenus[3].status = 3; } + menuList.value[1].subMenus.forEach(item => { if(item.id <= res.data) { item.status = 2 @@ -276,6 +318,7 @@ menuList.value[0].status = 2; menuList.value[1].status = 1; console.log("menu22",menuList.value) + } if(res.data >= 6 && res.data <= 9){ setMenuList(0); @@ -343,6 +386,8 @@ if(res.data === 11){ menuList.value[3].subMenus[1].status = 3; } + let twelveObj = {}; + let thirteenObj = {}; menuList.value[4].subMenus.forEach(item => { if(item.id <= res.data) { item.status = 2 @@ -370,9 +415,22 @@ menuList.value[4].status = 2; selectedObj.value =item; } + if(toPath.value && toPath.value === 'toTwelve' && item.id === 12){ + twelveObj = item; + }else if(toPath.value && toPath.value === 'toThirteen' && item.id === 13){ + thirteenObj = item; + } }) - + if(toPath.value && toPath.value === 'toTwelve' && twelveObj){ + chooseSubMenu(twelveObj,true) + }else if(toPath.value && toPath.value === 'toThirteen' && thirteenObj){ + chooseSubMenu(thirteenObj,true) + } } + if(toPath.value && toPath.value === 'toFive' && fiveObj){ + chooseSubMenu(fiveObj,true) + } + }else{ ElMessage.warning(res.message) } @@ -403,6 +461,7 @@ setTimeout(() => { isShowMenu.value = false; selectedObj.value = val; + }, 10) }else if(val.status === 2){ setTimeout(() => { @@ -439,11 +498,6 @@ selectedObj.value.status = 1; nextObj.value.status = 2; nextObj.value = val; - // if(flag){ - // setTimeout(() => { - // goRouter(selectedObj.value.id) - // }, 10) - // } //跳转 }, 10) } @@ -476,7 +530,7 @@ // }, 100) } -const nextMenu = (id) => { +const nextMenu = (id) => { menuList.value[id].subMenus.forEach( item => { if(item.id === selectedObj.value.id + 1){ chooseSubMenu(item,true); @@ -511,14 +565,13 @@ } const clickEdit = () => { - goRouter(selectedObj.value.id,'clickEdit') } const getNextStatus = async (val) => { - projectId.value = val; - console.log("val",val) + projectId.value = val const res = await getProjectStatus(val); if(res.code == 200){ + reportProcess.value = res.data if(res.data <=4){ menuList.value[0].subMenus.forEach(item => { if(item.id <= res.data){ @@ -645,6 +698,10 @@ goRouter(selectedObj.value.id,'add') } +const confirm = () => { + goRouter(selectedObj.value.id,'confirm') +} + const goRouter = (val,type) => { switch (val){ case 1: @@ -690,36 +747,160 @@ console.log("3") break; case 4: + if(type === 'add'){ + evalPlanRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + evalPlanRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + evalPlanRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + evalPlanRef.value.riskOpen('edit',projectId.value); + } + } console.log("4") break; case 5: + if(type === 'add'){ + employNoticeRcdRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + employNoticeRcdRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + employNoticeRcdRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + employNoticeRcdRef.value.riskOpen('edit',projectId.value); + } + } console.log("5") break; case 6: + if(type === 'add'){ + siteCheckRcdRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + siteCheckRcdRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + siteCheckRcdRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + siteCheckRcdRef.value.riskOpen('edit',projectId.value); + } + } console.log("6") break; case 7: + if(type === 'add'){ + innerReviewRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + innerReviewRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + innerReviewRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + innerReviewRef.value.riskOpen('edit',projectId.value); + } + } console.log("7") break; case 8: + if(type === 'add'){ + techReviewRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + techReviewRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + techReviewRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + techReviewRef.value.riskOpen('edit',projectId.value); + } + } console.log("8") break; case 9: + if(type === 'add'){ + uploadReviewRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + uploadReviewRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + uploadReviewRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + uploadReviewRef.value.riskOpen('edit',projectId.value); + } + } console.log("9") break; case 10: + if(type === 'add'){ + rateConRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + rateConRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + rateConRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + rateConRef.value.riskOpen('edit',projectId.value); + } + } console.log("10") break; case 11: + if(type === 'add'){ + proCtrlRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + proCtrlRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + proCtrlRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + proCtrlRef.value.riskOpen('edit',projectId.value); + } + } console.log("11") break; case 12: + if(type === 'add'){ + proArchRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + proArchRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + proArchRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + proArchRef.value.riskOpen('edit',projectId.value); + } + } console.log("12") break; case 13: + if(type === 'add'){ + signConfirmRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + signConfirmRef.value.riskOpen('clickEdit',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + signConfirmRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + signConfirmRef.value.riskOpen('edit',projectId.value); + } + } console.log("13") break; case 14: + if(type === 'add'){ + confirmEndRef.value.riskOpen('add',projectId.value); + }else if (type === 'clickEdit'){ + confirmEndRef.value.riskOpen('clickEdit',projectId.value); + } + else if (type === 'confirm'){ + confirmEndRef.value.riskOpen('confirm',projectId.value); + }else { + if(projectStatus.value === 'view' || projectStatus.value === 'add'){ + confirmEndRef.value.riskOpen('detail',projectId.value); + }else if(projectStatus.value === 'edit'){ + confirmEndRef.value.riskOpen('edit',projectId.value); + } + } console.log("14") break; } -- Gitblit v1.9.2