fix: 删除公告确认改用 ElMessageBox.confirm

- manager/Projects.vue: 删除空 body 的 el-dialog (header/footer 边框叠成两条线), 改用 ElMessageBox.confirm

- 合并 openDeleteAnnouncement/confirmDeleteAnn 为 deleteAnnouncement, 删无用 ref delAnnModalOpen/delAnnTargetRow
This commit is contained in:
郭庆泰
2026-09-13 21:03:10 +08:00
parent 9dc378974f
commit 9ea4e18161
+7 -19
View File
@@ -233,14 +233,6 @@
</template> </template>
</el-dialog> </el-dialog>
<!-- ============= 单行删除公告 modal ============= -->
<el-dialog v-model="delAnnModalOpen" title="您确定要删除公告吗?删除后无法恢复" width="420px" :show-close="false">
<template #footer>
<el-button type="primary" @click="confirmDeleteAnn">确定</el-button>
<el-button @click="delAnnModalOpen=false">取消</el-button>
</template>
</el-dialog>
<!-- ============= 单行执行单位评分 modal4 维度 ============= --> <!-- ============= 单行执行单位评分 modal4 维度 ============= -->
<el-dialog v-model="singleScoreModalOpen" title="执行单位评分" width="626px" :show-close="false"> <el-dialog v-model="singleScoreModalOpen" title="执行单位评分" width="626px" :show-close="false">
<table class="score-table" style="width:100%;border-collapse:collapse;font-size:13px"> <table class="score-table" style="width:100%;border-collapse:collapse;font-size:13px">
@@ -329,7 +321,7 @@ function onAction(cmd, row) {
else if (cmd === 'view') viewDetail(row) else if (cmd === 'view') viewDetail(row)
else if (cmd === 'edit') doEdit(row) else if (cmd === 'edit') doEdit(row)
else if (cmd === 'activate') openActivate(row) else if (cmd === 'activate') openActivate(row)
else if (cmd === 'delAnn') openDeleteAnnouncement(row) else if (cmd === 'delAnn') deleteAnnouncement(row)
else if (cmd === 'rate') openSingleScore(row) else if (cmd === 'rate') openSingleScore(row)
else if (cmd === 'delete') doDelete(row) else if (cmd === 'delete') doDelete(row)
} }
@@ -486,15 +478,13 @@ function confirmActivate() {
.catch(() => ElMessage.error('开通失败')) .catch(() => ElMessage.error('开通失败'))
} }
function openDeleteAnnouncement(row) { async function deleteAnnouncement(row) {
delAnnTargetRow.value = row try {
delAnnModalOpen.value = true await ElMessageBox.confirm(`确定删除项目 ${row.projectNo} 的所有公告吗?删除后无法恢复`, '删除公告', { type: 'warning' })
} } catch { return }
function confirmDeleteAnn() {
if (!delAnnTargetRow.value) return
// 删除公告: 后端专用端点, 将 3 个公示 URL 置 NULL (未发布由 URL 为空判定, 无独立 is_published 列) // 删除公告: 后端专用端点, 将 3 个公示 URL 置 NULL (未发布由 URL 为空判定, 无独立 is_published 列)
request.delete(`/business/project/${delAnnTargetRow.value.projectId}/announcement`) request.delete(`/business/project/${row.projectId}/announcement`)
.then(() => { ElMessage.success(`已删除项目 ${delAnnTargetRow.value.projectNo} 的公告`); delAnnModalOpen.value = false; load() }) .then(() => { ElMessage.success(`已删除项目 ${row.projectNo} 的公告`); load() })
.catch(() => ElMessage.error('删除失败')) .catch(() => ElMessage.error('删除失败'))
} }
@@ -614,8 +604,6 @@ const closeModalOpen = ref(false)
const closeTargetRow = ref(null) const closeTargetRow = ref(null)
const activateModalOpen = ref(false) const activateModalOpen = ref(false)
const activateTargetRow = ref(null) const activateTargetRow = ref(null)
const delAnnModalOpen = ref(false)
const delAnnTargetRow = ref(null)
const singleScoreModalOpen = ref(false) const singleScoreModalOpen = ref(false)
const singleScoreTargetRow = ref(null) const singleScoreTargetRow = ref(null)
const singleScoreForm = reactive({ qualityScore: 0, responseScore: 0, cooperationScore: 0, complianceScore: 0 }) const singleScoreForm = reactive({ qualityScore: 0, responseScore: 0, cooperationScore: 0, complianceScore: 0 })