25 lines
851 B
Python
25 lines
851 B
Python
from fastapi import APIRouter, BackgroundTasks, status, HTTPException
|
|
from fastapi.responses import JSONResponse
|
|
from .schemas import RemesaBaseSchema
|
|
from .tasks import process_remesa_request
|
|
from api.api_v2.modules.tasks.services import register_task
|
|
import logging
|
|
logger = logging.getLogger("app.api")
|
|
|
|
router = APIRouter()
|
|
|
|
@router.post("/services/remesas/", status_code=status.HTTP_202_ACCEPTED)
|
|
async def download_remesa(remesa_request: RemesaBaseSchema):
|
|
"""
|
|
Endpoint para iniciar la descarga completa de un pedimento.
|
|
"""
|
|
remesa_dict = remesa_request.model_dump()
|
|
|
|
# Ejecuta la tarea de Celery de forma asíncrona
|
|
task = process_remesa_request.delay(remesa_dict)
|
|
return {
|
|
"status": "submitted",
|
|
"detail": "La solicitud de descarga de la remesa ha sido enviada.",
|
|
"task_id": task.id
|
|
}
|