diff --git a/app/main.py b/app/main.py index e39822c..082beb3 100644 --- a/app/main.py +++ b/app/main.py @@ -1,8 +1,11 @@ from fastapi import FastAPI, __version__ from pydantic import BaseModel from typing import Set, List, Optional, Dict +from random import randint -from models.solver_content import SolverContent +from models.solve_request import SolveRequest +from models.solve_response import SolveResponse +from models.form import Form app = FastAPI() @@ -26,5 +29,6 @@ async def ready(): return 'OK' # just means we're on air @app.post('/solve/') -async def solve(solver_content: SolverContent): - return solver_content +async def solve(solve_request: SolveRequest): + response = SolveResponse(response_id=randint(100,5000), forms=[Form(items=solve_request.items)]) + return response diff --git a/app/models/form.py b/app/models/form.py new file mode 100644 index 0000000..4963daa --- /dev/null +++ b/app/models/form.py @@ -0,0 +1,7 @@ +from pydantic import BaseModel +from typing import List + +from models.item import Item + +class Form(BaseModel): + items: List[Item] diff --git a/app/models/solver_content.py b/app/models/solve_request.py similarity index 91% rename from app/models/solver_content.py rename to app/models/solve_request.py index 89586d1..df213bb 100644 --- a/app/models/solver_content.py +++ b/app/models/solve_request.py @@ -7,7 +7,8 @@ from models.irt_model import IRTModel from models.objective_function import ObjectiveFunction from models.advanced_options import AdvancedOptions -class SolverContent(BaseModel): +class SolveRequest(BaseModel): + token: str items: List[Item] constraints: List[Constraint] irt_model: IRTModel diff --git a/app/models/solve_response.py b/app/models/solve_response.py new file mode 100644 index 0000000..dcdc3d7 --- /dev/null +++ b/app/models/solve_response.py @@ -0,0 +1,8 @@ +from pydantic import BaseModel +from typing import List, Optional + +from models.form import Form + +class SolveResponse(BaseModel): + response_id: int + forms: List[Form] diff --git a/app/models/targets.py b/app/models/targets.py index c50f39f..7b56132 100644 --- a/app/models/targets.py +++ b/app/models/targets.py @@ -1,8 +1,8 @@ from pydantic import BaseModel class Targets(BaseModel): - neg_2_5: int - neg_1_5: int - neg_0_5: int - _0_5: int - _1: int + n_2_5: int + n_1_5: int + n_0_5: int + p_0_5: int + p_1: int