diff --git a/hydws/datamodel/base.py b/hydws/datamodel/base.py index a0846d19448fac32430046219a4d76d18142d3db..fff12a5799a787d035072e6813c00032bb25fa44 100644 --- a/hydws/datamodel/base.py +++ b/hydws/datamodel/base.py @@ -3,7 +3,8 @@ import functools import uuid from datetime import datetime -from sqlalchemy import Boolean, Column, DateTime, Float, Integer, String +from sqlalchemy import (BigInteger, Boolean, Column, DateTime, Float, Integer, + String) from sqlalchemy.dialects.postgresql import UUID from sqlalchemy.ext.declarative import declared_attr from sqlalchemy.orm import declarative_base @@ -17,7 +18,11 @@ class Base(object): @declared_attr def __tablename__(cls): return cls.__name__.lower() - _oid = Column(Integer, primary_key=True, nullable=False, autoincrement=True) + _oid = Column( + BigInteger, + primary_key=True, + nullable=False, + autoincrement=True) ORMBase = declarative_base(cls=Base) diff --git a/hydws/datamodel/orm.py b/hydws/datamodel/orm.py index 9fc2f7f669ac056889194f100bc3460199ae00ca..3f3e708f62f77899b290ff9efcf42b7da4195af8 100644 --- a/hydws/datamodel/orm.py +++ b/hydws/datamodel/orm.py @@ -1,4 +1,4 @@ -from sqlalchemy import Boolean, Column, ForeignKey, Index, Integer, String +from sqlalchemy import BigInteger, Boolean, Column, ForeignKey, Index, String from sqlalchemy.orm import relationship from hydws.datamodel.base import (CreationInfoMixin, EpochMixin, ORMBase, @@ -73,7 +73,7 @@ class BoreholeSection(EpochMixin('Epoch', epoch_type='finite'), description = Column(String) _borehole_oid = Column( - Integer, + BigInteger, ForeignKey('borehole._oid', ondelete="CASCADE"), index=True) @@ -107,7 +107,7 @@ class HydraulicSample(TimeQuantityMixin('datetime', value_nullable=False, fluidcomposition = Column(String) _boreholesection_oid = Column( - Integer, + BigInteger, ForeignKey('boreholesection._oid', ondelete="CASCADE"), index=True) section = relationship("BoreholeSection", back_populates="hydraulics") diff --git a/hydws/routers/boreholes.py b/hydws/routers/boreholes.py index ac1262337069607eb86b9cdd6a41ee9948f12fce..3924167f85c42995a670c940c0cb8346ee95795f 100644 --- a/hydws/routers/boreholes.py +++ b/hydws/routers/boreholes.py @@ -141,9 +141,9 @@ def csv_response(data) -> PlainTextResponse: return PlainTextResponse(data, media_type='text/csv') -@ router.get("/{borehole_id}/sections/{section_id}/hydraulics", - response_model=list[HydraulicSampleSchema], - response_model_exclude_none=True) +@router.get("/{borehole_id}/sections/{section_id}/hydraulics", + response_model=list[HydraulicSampleSchema], + response_model_exclude_none=True) async def get_section_hydraulics(borehole_id: uuid.UUID, section_id: uuid.UUID, db: DBSessionDep,