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>
</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 维度 ============= -->
<el-dialog v-model="singleScoreModalOpen" title="执行单位评分" width="626px" :show-close="false">
<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 === 'edit') doEdit(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 === 'delete') doDelete(row)
}
@@ -486,15 +478,13 @@ function confirmActivate() {
.catch(() => ElMessage.error('开通失败'))
}
function openDeleteAnnouncement(row) {
delAnnTargetRow.value = row
delAnnModalOpen.value = true
}
function confirmDeleteAnn() {
if (!delAnnTargetRow.value) return
async function deleteAnnouncement(row) {
try {
await ElMessageBox.confirm(`确定删除项目 ${row.projectNo} 的所有公告吗?删除后无法恢复`, '删除公告', { type: 'warning' })
} catch { return }
// 删除公告: 后端专用端点, 将 3 个公示 URL 置 NULL (未发布由 URL 为空判定, 无独立 is_published 列)
request.delete(`/business/project/${delAnnTargetRow.value.projectId}/announcement`)
.then(() => { ElMessage.success(`已删除项目 ${delAnnTargetRow.value.projectNo} 的公告`); delAnnModalOpen.value = false; load() })
request.delete(`/business/project/${row.projectId}/announcement`)
.then(() => { ElMessage.success(`已删除项目 ${row.projectNo} 的公告`); load() })
.catch(() => ElMessage.error('删除失败'))
}
@@ -614,8 +604,6 @@ const closeModalOpen = ref(false)
const closeTargetRow = ref(null)
const activateModalOpen = ref(false)
const activateTargetRow = ref(null)
const delAnnModalOpen = ref(false)
const delAnnTargetRow = ref(null)
const singleScoreModalOpen = ref(false)
const singleScoreTargetRow = ref(null)
const singleScoreForm = reactive({ qualityScore: 0, responseScore: 0, cooperationScore: 0, complianceScore: 0 })