From d0d78b9fbe144326f136ee048bb59d314413032e Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期二, 27 五月 2025 08:45:29 +0800 Subject: [PATCH] 修改导出 --- src/views/analyse/assessApply/index.vue | 71 ++++++++++++++++++++++++++++++++--- 1 files changed, 65 insertions(+), 6 deletions(-) diff --git a/src/views/analyse/assessApply/index.vue b/src/views/analyse/assessApply/index.vue index 3f6b536..3cee65a 100644 --- a/src/views/analyse/assessApply/index.vue +++ b/src/views/analyse/assessApply/index.vue @@ -42,7 +42,7 @@ </el-table-column> <el-table-column prop="experimentType" label="实验类别"> <template #default="scope"> - <span>{{developState.experimentTypeList.find(i=>i.id == scope.row.experimentType)?.name}}</span> + <span>{{scope.row.typeList.map(i=>i.typeName).join('、')}}</span> </template> </el-table-column> <el-table-column prop="status" label="评估申请"> @@ -55,18 +55,26 @@ <span>{{scope.row.assessApplyTime?scope.row.assessApplyTime.substring(0,16):'--'}}</span> </template> </el-table-column> + <el-table-column prop="status" label="最近评估时间" show-overflow-tooltip> + <template #default="scope"> + <span>{{scope.row.experimentAssessLogs?scope.row.experimentAssessLogs.map(i=>i.assessEndTime.substring(0,16)).join(','): ''}}</span> + </template> + </el-table-column> <el-table-column prop="stage" label="评估状态"> <template #default="scope"> <el-tag :type="scope.row.stage == 4?'success':scope.row.stage == 1?'info':''"> - {{scope.row.stage == 1?'未评估':scope.row.status == 2?'评估中':scope.row.status == 3?'评估完成':scope.row.status == 4?'生成报告':'--'}} + {{scope.row.stage == 1?'未评估':scope.row.stage == 2?'评估中':scope.row.stage == 3?'评估完成':scope.row.stage == 4?'生成报告':'--'}} </el-tag> </template> </el-table-column> <el-table-column label="操作" width="250" fixed="right"> <template #default="scope"> - <el-button size="small" text type="primary" :icon="Edit" @click="openRiskDialog(scope.row)">管理实验现实风险</el-button> - <el-button size="small" text type="primary" :icon="View" @click="openReportDialog('提交', scope.row)">提交综合评估报告审批</el-button> - <el-button size="small" :disabled="scope.row.status == 2 ? true : false" text type="primary" :icon="Edit" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button> + <el-button size="small" v-if="scope.row.stage >= 3 && !scope.row.reportId" text type="primary" :icon="Edit" @click="toReport(scope.row,0)">生成评估报告</el-button> + <el-button size="small" v-if="scope.row.stage >= 3 && scope.row.reportId" text type="primary" :icon="Edit" @click="toReport(scope.row,1)">重新生成报告</el-button> + <el-button size="small" text type="primary" :icon="Edit" @click="openRiskDialog(scope.row)">管理实验风险单元</el-button> + <el-button size="small" v-if="scope.row.stage == 4 && !scope.row.assessPerson" text type="primary" :icon="View" @click="openReportDialog('提交', scope.row)">提交审批</el-button> + <el-button size="small" v-if="scope.row.stage == 4 && scope.row.assessPerson" text type="primary" :icon="View" @click="openReportDialog('修改', scope.row)">修改</el-button> + <el-button size="small" v-if="scope.row.stage == 4 && scope.row.assessPerson" text type="primary" :icon="Edit" @click="openReportDialog('查看',scope.row)">查看</el-button> </template> </el-table-column> </el-table> @@ -130,6 +138,58 @@ } }; +const toReport = (val: ProjectType,type: number)=>{ + if(type == 0){ + ElMessageBox.confirm(`此操作将对该实验生成风险评估报告:“${val.experimentName}”,是否继续?`, '提示', { + confirmButtonText: '确认', + cancelButtonText: '取消', + type: 'warning' + }) + .then(async () => { + let res = await assessApplyApi().toRiskReport({ id: val.id }); + if (res.data.code === 100) { + ElMessage({ + type: 'success', + duration: 2000, + message: '生成报告成功' + }); + await getAssessData(); + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + }) + .catch((error) => { + }); + }else{ + ElMessageBox.confirm(`此操作将对该实验重新生成风险评估报告:“${val.experimentName}”,是否继续?`, '提示', { + confirmButtonText: '确认', + cancelButtonText: '取消', + type: 'warning' + }) + .then(async () => { + let res = await assessApplyApi().toRiskReport({ id: val.id, reSubmit: 1}); + if (res.data.code === 100) { + ElMessage({ + type: 'success', + duration: 2000, + message: '重新生成报告成功' + }); + await getAssessData(); + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + }) + .catch((error) => { + }); + } +} + const getAllRoom = async () => { let res = await roomApi().getAllRoom(); if(res.data.code === 100){ @@ -157,7 +217,6 @@ type: 'warning' }) .then(async () => { - debugger let res = await projectApi().deleteProjectById({ id: val.id }); if (res.data.code === 100) { ElMessage({ -- Gitblit v1.9.2