Corregido endpoint /build

This commit is contained in:
Mireya Cueto Garrido
2026-03-25 14:03:48 +01:00
parent e79c6df2ba
commit 30f87732f8
3 changed files with 17 additions and 5 deletions
+4
View File
@@ -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]
+4 -4
View File
@@ -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))
+9 -1
View File
@@ -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}