fix: 完善个人中心卡片管理

This commit is contained in:
2026-08-03 16:49:31 +08:00
parent 8fb24f94ab
commit 3f8ff30bbc
8 changed files with 192 additions and 2 deletions

View File

@@ -136,6 +136,16 @@ def mark_help_card_copied(
return api_success(help_card_dict(HelpCardService.mark_copied(db, user=current_user, card_id=card_id)))
@router.delete("/help-card/{card_id}")
def delete_help_card(
card_id: int,
db: Session = Depends(get_db),
current_user: User = Depends(get_current_user),
) -> dict:
HelpCardService.delete(db, user=current_user, card_id=card_id)
return api_success()
@router.post("/session/{session_id}/share-draft")
def generate_share_draft(
session_id: int,
@@ -165,6 +175,16 @@ def mark_share_draft_copied(
return api_success(share_draft_dict(ShareDraftService.mark_copied(db, user=current_user, draft_id=draft_id)))
@router.delete("/share-draft/{draft_id}")
def delete_share_draft(
draft_id: int,
db: Session = Depends(get_db),
current_user: User = Depends(get_current_user),
) -> dict:
ShareDraftService.delete(db, user=current_user, draft_id=draft_id)
return api_success()
@router.post("/completions")
def completions(
payload: ChatCompletionRequest,

View File

@@ -62,6 +62,14 @@ class HelpCardService:
db.refresh(card)
return card
@staticmethod
def delete(db: Session, *, user: User, card_id: int) -> None:
card = db.scalar(select(TeacherHelpCard).where(TeacherHelpCard.id == card_id, TeacherHelpCard.user_id == user.id))
if card is None:
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="求助卡不存在")
db.delete(card)
db.commit()
def help_card_dict(card: TeacherHelpCard) -> dict:
return {

View File

@@ -61,6 +61,14 @@ class ShareDraftService:
db.refresh(draft)
return draft
@staticmethod
def delete(db: Session, *, user: User, draft_id: int) -> None:
draft = db.scalar(select(ShareDraft).where(ShareDraft.id == draft_id, ShareDraft.user_id == user.id))
if draft is None:
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="分享稿不存在")
db.delete(draft)
db.commit()
def share_draft_dict(draft: ShareDraft) -> dict:
return {