From 9994456f304a53c028de77a3c975df4838348e53 Mon Sep 17 00:00:00 2001 From: ByungCheol Date: Sun, 5 Jul 2026 13:47:27 +0900 Subject: [PATCH] =?UTF-8?q?feat(admin):=20=EC=8A=A4=ED=8C=B8=20=EA=B0=90?= =?UTF-8?q?=EC=A7=80=20=ED=95=AD=EB=AA=A9=20=EA=B4=80=EB=A6=AC=EC=9E=90=20?= =?UTF-8?q?=EC=8B=A0=EA=B3=A0=20=EB=AA=A9=EB=A1=9D=20=ED=91=9C=EC=8B=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 스팸 감지 항목에 🤖 스팸감지 뱃지 표시 (🚩 신고 수 대신) - blockReason(블라인드 사유) 카드에 표시 - 스팸 항목에는 신고 무시 버튼 숨김 - 안내 문구에 스팸 자동 블라인드 정책 추가 Co-Authored-By: Claude Sonnet 4.6 --- src/views/admin/ReportAdminView.vue | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/src/views/admin/ReportAdminView.vue b/src/views/admin/ReportAdminView.vue index 67bd59a..6033690 100644 --- a/src/views/admin/ReportAdminView.vue +++ b/src/views/admin/ReportAdminView.vue @@ -17,6 +17,9 @@ const blockedCount = computed(() => items.value.filter((i) => i.blocked).length) function keyOf(it) { return `${it.targetType}:${it.targetId}` } +function isSpam(it) { + return it.blockReason === '스팸 키워드 감지' +} function categoryLabel(c) { return CATEGORY_LABEL[c] || c || '게시판' } @@ -99,8 +102,8 @@ onMounted(load)

- 신고 누적 5건 이상이면 자동 블라인드됩니다. 관리자는 여기서 신고 내용을 검토해 - 블라인드 하거나, 정상 글이면 신고 무시로 정리할 수 있습니다. + 신고 누적 5건 이상 또는 스팸 키워드 포함 시 자동 블라인드됩니다. + 관리자는 여기서 내용을 검토해 블라인드 하거나, 정상 글이면 신고 무시로 정리할 수 있습니다.

@@ -123,7 +126,8 @@ onMounted(load) {{ it.targetType === 'POST' ? '글' : '댓글' }} {{ categoryLabel(it.category) }} - 🚩 {{ it.reportCount }} + 🤖 스팸감지 + 🚩 {{ it.reportCount }} 블라인드됨 {{ formatTime(it.lastReportedAt) }}
@@ -134,6 +138,7 @@ onMounted(load)

{{ it.content }}

작성자: {{ it.authorName || '알 수 없음' }}

+

사유: {{ it.blockReason }}

글 보기 @@ -156,7 +161,7 @@ onMounted(load) 블라인드 해제