Skip to content

Commit 2d0b582

Browse files
committed
fix(slack): update draft status to rejected on dismiss and hide from home
1 parent 9229d48 commit 2d0b582

3 files changed

Lines changed: 13 additions & 2 deletions

File tree

backend/api/routes/feedback.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,11 @@ async def slack_interactions(
239239
)
240240

241241
elif action_id == "action_reject_draft":
242+
if draft_id.isdigit():
243+
repo = DraftRepository(session)
244+
await repo.update(
245+
int(draft_id), DraftUpdate(status=DraftStatus.REJECTED)
246+
)
242247
await client.post(
243248
response_url,
244249
json={

backend/models/enums.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ class DraftStatus(str, Enum):
1414
FAILED = "failed"
1515
PUBLISHED = "published"
1616
SCHEDULED = "scheduled"
17+
REJECTED = "rejected"
1718

1819

1920
class TaskStatus(str, Enum):

backend/repositories/draft_repository.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from sqlalchemy.ext.asyncio import AsyncSession
55

66
from backend.models.db_models import Draft
7+
from backend.models.enums import DraftStatus
78
from backend.models.schemas import DraftCreate, DraftUpdate
89

910

@@ -45,8 +46,12 @@ async def update(self, draft_id: int, draft_update: DraftUpdate) -> Draft | None
4546
async def get_recent_drafts(
4647
self, limit: int = 10, offset: int = 0, platform: str | None = None
4748
) -> list[Draft]:
48-
"""Витягує останні драфти (для Дашборду в Slack)"""
49-
stmt = select(Draft).order_by(Draft.updated_at.desc())
49+
"""Витягує останні драфти (для Дашборду в Slack), виключаючи відхилені."""
50+
stmt = (
51+
select(Draft)
52+
.where(Draft.status != DraftStatus.REJECTED)
53+
.order_by(Draft.updated_at.desc())
54+
)
5055
if platform:
5156
stmt = stmt.where(Draft.platform == platform)
5257
stmt = stmt.limit(limit).offset(offset)

0 commit comments

Comments
 (0)