diff --git a/src/backend/app/db/postgis_utils.py b/src/backend/app/db/postgis_utils.py
index a147a0e765..d1a2b2bc4b 100644
--- a/src/backend/app/db/postgis_utils.py
+++ b/src/backend/app/db/postgis_utils.py
@@ -15,6 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with FMTM. If not, see .
#
+"""PostGIS and geometry handling helper funcs."""
import datetime
@@ -25,11 +26,15 @@
def timestamp():
- """Used in SQL Alchemy models to ensure we refresh timestamp when new models initialised."""
+ """Get the current time.
+
+ Used to insert a current timestamp into Pydantic models.
+ """
return datetime.datetime.utcnow()
def geometry_to_geojson(geometry: Geometry, properties: str = {}, id: int = None):
+ """Convert SQLAlchemy geometry to GeoJSON."""
if geometry:
shape = to_shape(geometry)
geojson = {
@@ -40,9 +45,11 @@ def geometry_to_geojson(geometry: Geometry, properties: str = {}, id: int = None
# "bbox": shape.bounds,
}
return Feature(**geojson)
+ return {}
-def get_centroid(geometry: Geometry, properties: str = {}):
+def get_centroid(geometry: Geometry, properties: str = {}, id: int = None):
+ """Convert SQLAlchemy geometry to Centroid GeoJSON."""
if geometry:
shape = to_shape(geometry)
point = shape.centroid
@@ -50,5 +57,7 @@ def get_centroid(geometry: Geometry, properties: str = {}):
"type": "Feature",
"geometry": mapping(point),
"properties": properties,
+ "id": id,
}
return Feature(**geojson)
+ return {}
diff --git a/src/backend/app/projects/project_crud.py b/src/backend/app/projects/project_crud.py
index 175abedb09..c33864dd15 100644
--- a/src/backend/app/projects/project_crud.py
+++ b/src/backend/app/projects/project_crud.py
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with FMTM. If not, see .
#
+"""Logic for FMTM project routes."""
+
import io
import json
import os
@@ -1919,6 +1921,8 @@ async def convert_to_app_project(db_project: db_models.DbProject):
db_project.outline, {"id": db_project.id}, db_project.id
)
+ app_project.project_tasks = db_project.tasks
+
return app_project