irt-service/app/main.py
2021-09-08 11:25:55 -04:00

40 lines
973 B
Python

from fastapi import FastAPI, __version__
from pydantic import BaseModel
from typing import Set, List, Optional, Dict
from random import randint
from models.solve_request import SolveRequest
from models.solve_response import SolveResponse
from models.form import Form
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Welcome to Measures LOFT solver service. v0.1"}
@app.get("/healthcheck")
async def health():
content = {
"maintainer": "Meazure Horizon Team",
"git_repo": "https://github.com/yardstick/measure-solver",
"server": "OK",
"fastapi version": __version__,
"app version": "0.1.1"
}
return content
@app.get('/readycheck')
async def ready():
return 'OK' # just means we're on air
@app.post('/solve/')
async def solve(solve_request: SolveRequest):
response = SolveResponse(
response_id=randint(100,5000),
forms=[Form(
items=[item.id for item in solve_request.items]
)]
)
return response