From 07c5fd2edbbe48b6d4626cb1b9cd32dea5a09af1 Mon Sep 17 00:00:00 2001
From: Nicolas Schmid <nicolas@breiten.ch>
Date: Fri, 15 Nov 2024 08:58:11 +0100
Subject: [PATCH] fix: change id's to bigint

---
 hydws/datamodel/base.py    | 9 +++++++--
 hydws/datamodel/orm.py     | 6 +++---
 hydws/routers/boreholes.py | 6 +++---
 3 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/hydws/datamodel/base.py b/hydws/datamodel/base.py
index a0846d1..fff12a5 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 9fc2f7f..3f3e708 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 ac12623..3924167 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,
-- 
GitLab