2023-09-14 16:35:24 +08:00
|
|
|
import logging
|
|
|
|
from typing import Any
|
|
|
|
|
2024-07-24 17:40:04 +08:00
|
|
|
from fastapi import APIRouter, Depends
|
2023-09-14 16:35:24 +08:00
|
|
|
|
2024-07-27 02:34:44 +08:00
|
|
|
from felicity.apps.job.services import JobService
|
2023-09-14 16:35:24 +08:00
|
|
|
|
2023-11-22 17:13:16 +08:00
|
|
|
jobs = APIRouter(tags=["job"], prefix="/jobs")
|
2023-09-14 16:35:24 +08:00
|
|
|
|
|
|
|
logging.basicConfig(level=logging.INFO)
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
|
|
|
2023-11-22 17:13:16 +08:00
|
|
|
@jobs.get("", response_model=None)
|
2024-07-24 17:40:04 +08:00
|
|
|
async def all_jobs(job_service: JobService = Depends(JobService)) -> Any:
|
2023-09-14 16:35:24 +08:00
|
|
|
"""
|
|
|
|
Retrieve all jobs
|
|
|
|
"""
|
2024-07-24 17:40:04 +08:00
|
|
|
return await job_service.all()
|
2024-07-28 03:52:31 +08:00
|
|
|
|
|
|
|
@jobs.get("/pending", response_model=None)
|
|
|
|
async def pending_jobs(job_service: JobService = Depends(JobService)) -> Any:
|
|
|
|
"""
|
|
|
|
Retrieve all pending jobs
|
|
|
|
"""
|
|
|
|
return await job_service.fetch_sorted()
|