接口优化
This commit is contained in:
@@ -38,9 +38,12 @@ def create_table(request: CreateTableRequest, db: Session = Depends(get_db)):
|
||||
)
|
||||
return SQLExecuteResponse(**result)
|
||||
|
||||
@router.delete("/drop-table/{table_name}", response_model=SQLExecuteResponse)
|
||||
def drop_table(table_name: str, db: Session = Depends(get_db)):
|
||||
@router.post("/drop-table")
|
||||
def drop_table(request: dict, db: Session = Depends(get_db)):
|
||||
"""删除表"""
|
||||
table_name = request.get("table_name")
|
||||
if not table_name:
|
||||
raise HTTPException(status_code=400, detail="table_name is required")
|
||||
result = DatabaseService.drop_table(db, table_name)
|
||||
return SQLExecuteResponse(**result)
|
||||
|
||||
@@ -50,7 +53,7 @@ def import_data(request: ImportDataRequest, db: Session = Depends(get_db)):
|
||||
result = DatabaseService.import_data(db, request.table_name, request.data)
|
||||
return SQLExecuteResponse(**result)
|
||||
|
||||
@router.get("/tables", response_model=List[str])
|
||||
@router.post("/tables", response_model=List[str])
|
||||
def get_table_list():
|
||||
"""获取所有表名"""
|
||||
return DatabaseService.get_table_list()
|
||||
@@ -121,7 +121,7 @@ def add_date_job(request: AddDateJobRequest):
|
||||
message=f"添加定时任务失败: {str(e)}"
|
||||
)
|
||||
|
||||
@router.get("/", response_model=List[JobResponse])
|
||||
@router.post("/list", response_model=List[JobResponse])
|
||||
def get_jobs():
|
||||
"""获取所有任务"""
|
||||
jobs = task_scheduler.get_jobs()
|
||||
@@ -136,9 +136,12 @@ def get_jobs():
|
||||
))
|
||||
return result
|
||||
|
||||
@router.delete("/{job_id}", response_model=TaskResponse)
|
||||
def remove_job(job_id: str):
|
||||
@router.post("/remove", response_model=TaskResponse)
|
||||
def remove_job(request: dict):
|
||||
"""删除任务"""
|
||||
job_id = request.get("job_id")
|
||||
if not job_id:
|
||||
raise HTTPException(status_code=400, detail="job_id is required")
|
||||
success = task_scheduler.remove_job(job_id)
|
||||
if success:
|
||||
return TaskResponse(
|
||||
@@ -151,9 +154,12 @@ def remove_job(job_id: str):
|
||||
message=f"删除任务 {job_id} 失败"
|
||||
)
|
||||
|
||||
@router.put("/{job_id}/pause", response_model=TaskResponse)
|
||||
def pause_job(job_id: str):
|
||||
@router.post("/pause", response_model=TaskResponse)
|
||||
def pause_job(request: dict):
|
||||
"""暂停任务"""
|
||||
job_id = request.get("job_id")
|
||||
if not job_id:
|
||||
raise HTTPException(status_code=400, detail="job_id is required")
|
||||
success = task_scheduler.pause_job(job_id)
|
||||
if success:
|
||||
return TaskResponse(
|
||||
@@ -166,9 +172,12 @@ def pause_job(job_id: str):
|
||||
message=f"暂停任务 {job_id} 失败"
|
||||
)
|
||||
|
||||
@router.put("/{job_id}/resume", response_model=TaskResponse)
|
||||
def resume_job(job_id: str):
|
||||
@router.post("/resume", response_model=TaskResponse)
|
||||
def resume_job(request: dict):
|
||||
"""恢复任务"""
|
||||
job_id = request.get("job_id")
|
||||
if not job_id:
|
||||
raise HTTPException(status_code=400, detail="job_id is required")
|
||||
success = task_scheduler.resume_job(job_id)
|
||||
if success:
|
||||
return TaskResponse(
|
||||
@@ -181,7 +190,7 @@ def resume_job(job_id: str):
|
||||
message=f"恢复任务 {job_id} 失败"
|
||||
)
|
||||
|
||||
@router.get("/functions", response_model=List[str])
|
||||
@router.post("/functions", response_model=List[str])
|
||||
def get_available_functions():
|
||||
"""获取可用的任务函数列表"""
|
||||
return list(AVAILABLE_FUNCTIONS.keys())
|
||||
@@ -190,6 +190,7 @@ class DatabaseService:
|
||||
"""获取所有表名"""
|
||||
try:
|
||||
inspector = inspect(engine)
|
||||
return inspector.get_table_names()
|
||||
# 排除mysql的系统表和accounts表
|
||||
return [table for table in inspector.get_table_names() if not table.startswith('mysql') and table != 'accounts']
|
||||
except Exception as e:
|
||||
return []
|
||||
Reference in New Issue
Block a user