# Support for GET and PUT

* adds full external identifier support for GET and PUT methods on EIV, KOM, EMA and OEK
This commit is contained in:
2026-05-10 10:54:48 +02:00
parent b721e9c51c
commit 3ae0dc0cc1
6 changed files with 25 additions and 19 deletions

View File

@@ -113,9 +113,11 @@ class CompensationAPISerializerV1(AbstractModelAPISerializerV1, AbstractCompensa
obj = self._initialize_objects(json_model, user)
# Fill in data to objects
properties = json_model.get("properties", None)
if not properties:
raise AssertionError("No 'properties' found in payload!")
properties = json_model["properties"]
external_identifier = properties.get("external_identifier", None)
self._check_external_identifier_on_entry_creation(external_identifier)
obj.identifier = obj.generate_new_identifier()
obj.title = properties["title"]
obj.is_cef = properties["is_cef"]
@@ -131,7 +133,7 @@ class CompensationAPISerializerV1(AbstractModelAPISerializerV1, AbstractCompensa
obj = self._set_compensation_states(obj, properties["after_states"], obj.after_states)
obj = self._set_deadlines(obj, properties["deadlines"])
self._set_external_identifier(obj, properties.get("external_identifier", None))
self._set_external_identifier(obj.id, properties.get("external_identifier", None), obj.created)
obj.log.add(obj.created)
celery_update_parcels.delay(obj.geometry.id)
@@ -156,10 +158,6 @@ class CompensationAPISerializerV1(AbstractModelAPISerializerV1, AbstractCompensa
# Fill in data to objects
properties = json_model["properties"]
external_identifier = properties.get("external_identifier", None)
self._check_external_identifier_on_entry_creation(external_identifier)
obj.title = properties["title"]
obj.is_cef = properties["is_cef"]
obj.is_coherence_keeping = properties["is_coherence_keeping"]
@@ -177,7 +175,7 @@ class CompensationAPISerializerV1(AbstractModelAPISerializerV1, AbstractCompensa
obj = self._set_compensation_states(obj, properties["after_states"], obj.after_states)
obj = self._set_deadlines(obj, properties["deadlines"])
self._set_external_identifier(obj, properties.get("external_identifier", None))
self._set_external_identifier(obj.id, properties.get("external_identifier", None), update_action)
obj.log.add(update_action)
celery_update_parcels.delay(obj.geometry.id)