Заливаем готовую часть #1

Merged
Sosees04ka merged 26 commits from modified_db into main 2024-11-05 21:26:38 +04:00
Showing only changes of commit cc2e45619a - Show all commits

View File

@ -0,0 +1,44 @@
from typing import Optional
from sqlalchemy import select
from db.db_connection import async_session
from db.models.ch_experimentdb_experiment_data_model import ChExperimentDBExperimentData
class ChExperimentDBExperimentDataRepository:
@staticmethod
async def get_all() -> Optional[list[ChExperimentDBExperimentData]]:
async with async_session() as session:
result = await session.execute(select(ChExperimentDBExperimentData))
return result.scalar.all()
@staticmethod
async def get_by_id(id_: int) -> Optional[ChExperimentDBExperimentData]:
async with async_session() as session:
result = await session.execute(select(ChExperimentDBExperimentData).where(ChExperimentDBExperimentData.id == id_))
return result.scalars().first()
@staticmethod
async def create(volume: float,
nitrogen_oxide_emission: float,
temperature: float,
co_fraction: float,
co2_fraction: float,
x: float,
y: float,
z: float,
file_id: str):
new_data = ChExperimentDBExperimentData(
volume=volume,
nitrogen_oxide_emission=nitrogen_oxide_emission,
temperature=temperature,
co_fraction=co_fraction,
co2_fraction=co2_fraction,
x=x,
y=y,
z=z,
file_id=file_id
)
async with async_session() as session:
session.add(new_data)
await session.commit()