Skip to content

Commit 6d5a2a9

Browse files
committed
fix
1 parent a0306ad commit 6d5a2a9

23 files changed

+61
-56
lines changed

src/opengeodeweb_back/routes/blueprint_routes.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
)
3333
def allowed_files() -> flask.Response:
3434
utils_functions.validate_request(flask.request, schemas_dict["allowed_files"])
35-
params = schemas.AllowedFiles(**flask.request.get_json())
35+
params = schemas.AllowedFiles.from_dict(flask.request.get_json())
3636
extensions = geode_functions.list_input_extensions(params.supported_feature)
3737
return flask.make_response({"extensions": extensions}, 200)
3838

@@ -63,7 +63,7 @@ def allowed_objects() -> flask.Response:
6363
return flask.make_response({}, 200)
6464

6565
utils_functions.validate_request(flask.request, schemas_dict["allowed_objects"])
66-
params = schemas.AllowedObjects(**flask.request.get_json())
66+
params = schemas.AllowedObjects.from_dict(flask.request.get_json())
6767
file_absolute_path = geode_functions.upload_file_path(params.filename)
6868
allowed_objects = geode_functions.list_geode_objects(
6969
file_absolute_path, params.supported_feature
@@ -77,7 +77,7 @@ def allowed_objects() -> flask.Response:
7777
)
7878
def missing_files() -> flask.Response:
7979
utils_functions.validate_request(flask.request, schemas_dict["missing_files"])
80-
params = schemas.MissingFiles(**flask.request.get_json())
80+
params = schemas.MissingFiles.from_dict(flask.request.get_json())
8181
file_path = geode_functions.upload_file_path(params.filename)
8282

8383
additional_files = geode_functions.additional_files(
@@ -119,7 +119,7 @@ def crs_converter_geographic_coordinate_systems() -> flask.Response:
119119
utils_functions.validate_request(
120120
flask.request, schemas_dict["geographic_coordinate_systems"]
121121
)
122-
params = schemas.GeographicCoordinateSystems(**flask.request.get_json())
122+
params = schemas.GeographicCoordinateSystems.from_dict(flask.request.get_json())
123123
infos = geode_functions.geographic_coordinate_systems(params.input_geode_object)
124124
crs_list = []
125125
for info in infos:
@@ -138,7 +138,7 @@ def crs_converter_geographic_coordinate_systems() -> flask.Response:
138138
)
139139
def inspect_file() -> flask.Response:
140140
utils_functions.validate_request(flask.request, schemas_dict["inspect_file"])
141-
params = schemas.InspectFile(**flask.request.get_json())
141+
params = schemas.InspectFile.from_dict(flask.request.get_json())
142142
file_path = geode_functions.upload_file_path(params.filename)
143143
data = geode_functions.load(params.input_geode_object, file_path)
144144
class_inspector = geode_functions.inspect(params.input_geode_object, data)
@@ -154,7 +154,7 @@ def geode_objects_and_output_extensions() -> flask.Response:
154154
utils_functions.validate_request(
155155
flask.request, schemas_dict["geode_objects_and_output_extensions"]
156156
)
157-
params = schemas.GeodeObjectsAndOutputExtensions(**flask.request.get_json())
157+
params = schemas.GeodeObjectsAndOutputExtensions.from_dict(flask.request.get_json())
158158
file_path = geode_functions.upload_file_path(params.filename)
159159
data = geode_functions.load(
160160
params.input_geode_object,
@@ -175,7 +175,7 @@ def geode_objects_and_output_extensions() -> flask.Response:
175175
)
176176
def save_viewable_file() -> flask.Response:
177177
utils_functions.validate_request(flask.request, schemas_dict["save_viewable_file"])
178-
params = schemas.SaveViewableFile(**flask.request.get_json())
178+
params = schemas.SaveViewableFile.from_dict(flask.request.get_json())
179179
return flask.make_response(
180180
utils_functions.generate_native_viewable_and_light_viewable_from_file(
181181
geode_object=params.input_geode_object,
@@ -191,7 +191,7 @@ def save_viewable_file() -> flask.Response:
191191
)
192192
def texture_coordinates() -> flask.Response:
193193
utils_functions.validate_request(flask.request, schemas_dict["texture_coordinates"])
194-
params = schemas.TextureCoordinates(**flask.request.get_json())
194+
params = schemas.TextureCoordinates.from_dict(flask.request.get_json())
195195
data = geode_functions.load_data(params.id)
196196
texture_coordinates = data.texture_manager().texture_names()
197197
return flask.make_response({"texture_coordinates": texture_coordinates}, 200)
@@ -205,7 +205,7 @@ def vertex_attribute_names() -> flask.Response:
205205
utils_functions.validate_request(
206206
flask.request, schemas_dict["vertex_attribute_names"]
207207
)
208-
params = schemas.VertexAttributeNames(**flask.request.get_json())
208+
params = schemas.VertexAttributeNames.from_dict(flask.request.get_json())
209209
data = geode_functions.load_data(params.id)
210210
vertex_attribute_names = data.vertex_attribute_manager().attribute_names()
211211
return flask.make_response(
@@ -224,7 +224,7 @@ def polygon_attribute_names() -> flask.Response:
224224
utils_functions.validate_request(
225225
flask.request, schemas_dict["polygon_attribute_names"]
226226
)
227-
params = schemas.PolygonAttributeNames(**flask.request.get_json())
227+
params = schemas.PolygonAttributeNames.from_dict(flask.request.get_json())
228228
data = geode_functions.load_data(params.id)
229229
polygon_attribute_names = data.polygon_attribute_manager().attribute_names()
230230
return flask.make_response(
@@ -243,7 +243,7 @@ def polyhedron_attribute_names() -> flask.Response:
243243
utils_functions.validate_request(
244244
flask.request, schemas_dict["polyhedron_attribute_names"]
245245
)
246-
params = schemas.PolyhedronAttributeNames(**flask.request.get_json())
246+
params = schemas.PolyhedronAttributeNames.from_dict(flask.request.get_json())
247247
data = geode_functions.load_data(params.id)
248248
polyhedron_attribute_names = data.polyhedron_attribute_manager().attribute_names()
249249
return flask.make_response(

src/opengeodeweb_back/routes/create/blueprint_create.py

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,10 @@ def create_point() -> flask.Response:
2525
"""Endpoint to create a single point in 3D space."""
2626
print(f"create_point : {flask.request=}", flush=True)
2727
utils_functions.validate_request(flask.request, schemas_dict["create_point"])
28-
params = schemas.CreatePoint(**flask.request.get_json())
28+
params = schemas.CreatePoint.from_dict(flask.request.get_json())
2929

3030
# Create the point
31-
class_ = geode_functions.geode_object_class("PointSet3D")
32-
pointset = class_.create()
31+
pointset = geode_functions.geode_object_class("PointSet3D").create()
3332
builder = geode_functions.create_builder("PointSet3D", pointset)
3433
builder.set_name(params.name)
3534
builder.create_point(opengeode.Point3D([params.x, params.y, params.z]))
@@ -49,31 +48,23 @@ def create_aoi() -> flask.Response:
4948
"""Endpoint to create an Area of Interest (AOI) as an EdgedCurve3D."""
5049
print(f"create_aoi : {flask.request=}", flush=True)
5150
utils_functions.validate_request(flask.request, schemas_dict["create_aoi"])
52-
params = schemas.CreateAoi(**flask.request.get_json())
51+
params = schemas.CreateAoi.from_dict(flask.request.get_json())
5352

5453
# Create the edged curve
55-
class_ = geode_functions.geode_object_class("EdgedCurve3D")
56-
edged_curve = class_.create()
54+
edged_curve = geode_functions.geode_object_class("EdgedCurve3D").create()
5755
builder = geode_functions.create_builder("EdgedCurve3D", edged_curve)
5856
builder.set_name(params.name)
5957

6058
# Create vertices first
61-
vertex_indices: list[int] = []
6259
for point in params.points:
63-
vertex_id = builder.create_point(
64-
opengeode.Point3D([point.x, point.y, params.z])
65-
)
66-
vertex_indices.append(vertex_id)
60+
pp = opengeode.Point3D([point.x, point.y, params.z])
61+
builder.create_point(opengeode.Point3D([point.x, point.y, params.z]))
6762

6863
# Create edges between consecutive vertices and close the loop
69-
num_vertices = len(vertex_indices)
64+
num_vertices = len(params.points)
7065
for i in range(num_vertices):
7166
next_i = (i + 1) % num_vertices
72-
edge_id = builder.create_edge()
73-
builder.set_edge_vertex(opengeode.EdgeVertex(edge_id, 0), vertex_indices[i])
74-
builder.set_edge_vertex(
75-
opengeode.EdgeVertex(edge_id, 1), vertex_indices[next_i]
76-
)
67+
builder.create_edge_with_vertices(i, next_i)
7768

7869
# Save and get info
7970
result = utils_functions.generate_native_viewable_and_light_viewable_from_object(

src/opengeodeweb_back/routes/create/schemas/create_aoi.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23
from typing import List, Optional
34

45

56
@dataclass
6-
class Point:
7+
class Point(DataClassJsonMixin):
78
x: float
89
y: float
910

1011

1112
@dataclass
12-
class CreateAoi:
13+
class CreateAoi(DataClassJsonMixin):
1314
name: str
1415
"""Name of the AOI"""
1516

src/opengeodeweb_back/routes/create/schemas/create_point.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23

34

45
@dataclass
5-
class CreatePoint:
6+
class CreatePoint(DataClassJsonMixin):
67
name: str
78
x: float
89
y: float

src/opengeodeweb_back/routes/models/blueprint_models.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ def uuid_to_flat_index() -> flask.Response:
2020
utils_functions.validate_request(
2121
flask.request, schemas_dict["vtm_component_indices"]
2222
)
23-
params = schemas.VtmComponentIndices(**flask.request.get_json())
23+
params = schemas.VtmComponentIndices.from_dict(flask.request.get_json())
2424
vtm_file_path = geode_functions.data_file_path(params.id, "viewable.vtm")
2525
tree = ET.parse(vtm_file_path)
2626
root = tree.find("vtkMultiBlockDataSet")
@@ -41,7 +41,7 @@ def uuid_to_flat_index() -> flask.Response:
4141
)
4242
def extract_uuids_endpoint() -> flask.Response:
4343
utils_functions.validate_request(flask.request, schemas_dict["mesh_components"])
44-
params = schemas.MeshComponents(**flask.request.get_json())
44+
params = schemas.MeshComponents.from_dict(flask.request.get_json())
4545
model = geode_functions.load_data(params.id)
4646
mesh_components = model.mesh_components()
4747
uuid_dict = {}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23

34

45
@dataclass
5-
class MeshComponents:
6+
class MeshComponents(DataClassJsonMixin):
67
id: str
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23

34

45
@dataclass
5-
class VtmComponentIndices:
6+
class VtmComponentIndices(DataClassJsonMixin):
67
id: str
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23
from typing import Optional
34

45

56
@dataclass
6-
class AllowedFiles:
7+
class AllowedFiles(DataClassJsonMixin):
78
supported_feature: Optional[str] = None
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23
from typing import Optional
34

45

56
@dataclass
6-
class AllowedObjects:
7+
class AllowedObjects(DataClassJsonMixin):
78
filename: str
89
supported_feature: Optional[str] = None
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1+
from dataclasses_json import DataClassJsonMixin
12
from dataclasses import dataclass
23

34

45
@dataclass
5-
class GeodeObjectsAndOutputExtensions:
6+
class GeodeObjectsAndOutputExtensions(DataClassJsonMixin):
67
filename: str
78
input_geode_object: str

0 commit comments

Comments
 (0)