mirror of
https://github.com/bellingcat/auto-archiver-api.git
synced 2026-06-13 05:58:35 +03:00
delete op
This commit is contained in:
@@ -1,12 +1,11 @@
|
|||||||
from sqlalchemy.orm import Session, load_only
|
from sqlalchemy.orm import Session, load_only
|
||||||
|
from loguru import logger
|
||||||
from . import models, schemas
|
from . import models, schemas
|
||||||
|
|
||||||
|
|
||||||
def get_task(db: Session, task_id: str):
|
def get_task(db: Session, task_id: str):
|
||||||
return base_query(db).filter(models.Task.id == task_id).first()
|
return base_query(db).filter(models.Task.id == task_id).first()
|
||||||
|
|
||||||
|
|
||||||
def get_tasks(db: Session, skip: int = 0, limit: int = 100):
|
def get_tasks(db: Session, skip: int = 0, limit: int = 100):
|
||||||
return base_query(db).offset(skip).limit(limit).all()
|
return base_query(db).offset(skip).limit(limit).all()
|
||||||
|
|
||||||
@@ -26,3 +25,11 @@ def create_task(db: Session, task: schemas.TaskCreate):
|
|||||||
db.commit()
|
db.commit()
|
||||||
db.refresh(db_task)
|
db.refresh(db_task)
|
||||||
return db_task
|
return db_task
|
||||||
|
|
||||||
|
|
||||||
|
def delete_task(db: Session, task_id: str, email:str)->bool:
|
||||||
|
db_task = db.query(models.Task).filter(models.Task.id == task_id, models.Task.author==email).first()
|
||||||
|
if db_task:
|
||||||
|
db.delete(db_task)
|
||||||
|
db.commit()
|
||||||
|
return db_task is not None
|
||||||
10
src/main.py
10
src/main.py
@@ -89,6 +89,16 @@ def get_status(task_id, access_token:str):
|
|||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
@app.delete("/tasks/{task_id}")
|
||||||
|
def get_status(task_id, access_token:str, db: Session = Depends(get_db)):
|
||||||
|
email = validate_user_get_email(access_token)
|
||||||
|
logger.info(f"deleting task {task_id} request by {email}")
|
||||||
|
return JSONResponse({
|
||||||
|
"id": task_id,
|
||||||
|
"deleted": crud.delete_task(db, task_id, email)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
@app.get("/")
|
@app.get("/")
|
||||||
def home():
|
def home():
|
||||||
return JSONResponse({"status": "good", "version": VERSION})
|
return JSONResponse({"status": "good", "version": VERSION})
|
||||||
|
|||||||
Reference in New Issue
Block a user