马宇豪
2025-05-21 fabfb747cc25acc85993d133821ceb19532cab0b
src/views/analyse/assessApply/index.vue
@@ -69,7 +69,8 @@
                        </el-table-column>
                        <el-table-column label="操作" width="250" fixed="right">
                            <template #default="scope">
                                <el-button size="small" v-if="scope.row.stage == 3" text type="primary" :icon="Edit" @click="toReport(scope.row)">生成评估报告</el-button>
                                <el-button size="small" v-if="scope.row.stage == 3" text type="primary" :icon="Edit" @click="toReport(scope.row,0)">生成评估报告</el-button>
                                <el-button size="small" v-if="scope.row.stage == 4" 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>
@@ -137,30 +138,56 @@
    }
};
const toReport = (val: ProjectType)=>{
  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) => {
      });
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 () => {