summaryrefslogtreecommitdiff
path: root/api/routes/measures.py
blob: 195da9a515b53285a6c10ca19bd93926c7f6f362 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from fastapi import APIRouter
from sqlalchemy import select
from ..database import SessionLocal
from ..models import Measure

router = APIRouter(
    prefix='/measures',
    tags=['measures']
)

@router.get('/')
async def get_measures():
    dc = {'measures': []}
    session = SessionLocal()
    stmt = select(Measure)
    measures = session.execute(stmt)
    for measure in measures.scalars():
        mem = {
            'id': measure.id,
            'name': measure.name,
            'unit_code': measure.unit_code
        }
        dc['measures'].append(mem)
    dc['size'] = len(dc['measures'])
    session.close()
    return dc