from fastapi import APIRouter, HTTPException from db.crud import * from db.models import ExperimentData from network.schemas import ExperimentDataBody router = APIRouter() @router.post('/create') async def create_experiment_data(body: ExperimentDataBody): try: await create(ExperimentData, direction=body.direction, temperature=body.temperature, nox=body.nox, co2=body.co2, co=body.co, file_id=body.file_id ) return {"message": "Новая запись успешно добавлена"} except Exception as e: raise HTTPException(status_code=500, detail=f"An error occurred: {str(e)}") @router.get('/all') async def get_all_experiment_data(): try: result = await get_all(ExperimentData) if result is not None: return result else: return {"message": "Нет записей в "} except Exception as e: raise HTTPException(status_code=500, detail=f"An error occurred: {str(e)}") @router.get('/{id}') async def get_by_id_experiment_data(id: int): try: result = await get_by_id(ExperimentData, id) if result is not None: return result else: return {"message": "Запись не найдена"} except Exception as e: raise HTTPException(status_code=500, detail=f"An error occurred: {str(e)}") @router.delete('/{id}/delete') async def delete_experiment_data(id: int): try: is_deleted = await delete(ExperimentData, id) if is_deleted: return {"message": "Запись успешно удалена"} else: return {"message": "Запись не найдена"} except Exception as e: raise HTTPException(status_code=500, detail=f"An error occurred: {str(e)}")