fix: 修复 episodes + yearly_targets 模型导入缺失,增 DELETE 接口,冒烟 6/6 全绿
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
"""
|
||||
节目期次 API — 增改查(责编和管理员可操作)
|
||||
节目期次 API — 增删改查(责编和管理员可操作)
|
||||
"""
|
||||
|
||||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
@@ -7,6 +7,7 @@ from sqlmodel import Session, select
|
||||
|
||||
from app.core.deps import get_current_user, require_role
|
||||
from app.db.session import get_session
|
||||
from app.models.episode import Episode
|
||||
from app.models.user import User, UserRole
|
||||
from app.schemas.episode import EpisodeCreate, EpisodeResponse, EpisodeUpdate
|
||||
|
||||
@@ -79,4 +80,19 @@ def update_episode(
|
||||
session.add(episode)
|
||||
session.commit()
|
||||
session.refresh(episode)
|
||||
return episode
|
||||
return episode
|
||||
|
||||
|
||||
@router.delete("/{episode_id}", status_code=status.HTTP_204_NO_CONTENT)
|
||||
def delete_episode(
|
||||
episode_id: int,
|
||||
session: Session = Depends(get_session),
|
||||
current_user: User = Depends(require_role(UserRole.zhipianren, UserRole.zebian)),
|
||||
):
|
||||
"""删除一期节目(仅管理员/责编)。"""
|
||||
episode = session.get(Episode, episode_id)
|
||||
if episode is None:
|
||||
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="期次不存在")
|
||||
session.delete(episode)
|
||||
session.commit()
|
||||
return None
|
||||
Reference in New Issue
Block a user