Corregido endpoint /build
This commit is contained in:
@@ -41,3 +41,7 @@ class DoCMFRequest(BaseModel):
|
||||
if any(c < 0 for c in v):
|
||||
raise ValueError("Las cartas no pueden ser negativas.")
|
||||
return v
|
||||
|
||||
|
||||
class DoCMFMultiRequest(BaseModel):
|
||||
levels: List[DoCMFRequest]
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
from fastapi import APIRouter, HTTPException
|
||||
from models.docmf_models import DoCMFRequest
|
||||
from services.docmf_build_service import build_docmf
|
||||
from models.docmf_models import DoCMFMultiRequest
|
||||
from services.docmf_build_service import build_docmf_multi
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@router.post("/build")
|
||||
def build(request: DoCMFRequest):
|
||||
def build(request: DoCMFMultiRequest):
|
||||
try:
|
||||
return build_docmf(request)
|
||||
return build_docmf_multi(request)
|
||||
except Exception as e:
|
||||
raise HTTPException(status_code=400, detail=str(e))
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
def build_docmf(request):
|
||||
def build_single_docmf(request):
|
||||
a, b = request.core
|
||||
c, d = request.support
|
||||
|
||||
@@ -35,3 +35,11 @@ def build_docmf(request):
|
||||
"left_nodes": left_nodes,
|
||||
"right_nodes": right_nodes
|
||||
}
|
||||
|
||||
|
||||
def build_docmf_multi(request):
|
||||
results = []
|
||||
for level in request.levels:
|
||||
result = build_single_docmf(level)
|
||||
results.append(result)
|
||||
return {"results": results}
|
||||
|
||||
Reference in New Issue
Block a user