diff --git a/sample-management-custom/caosdb-server/scripting/bin/sample_helpers/sample_upload_add_special_properties.py b/sample-management-custom/caosdb-server/scripting/bin/sample_helpers/sample_upload_add_special_properties.py index 22423058f41d0f27d646b78529b055531b223370..b4e13307d17c1451188b37f62c9e885e858c9845 100644 --- a/sample-management-custom/caosdb-server/scripting/bin/sample_helpers/sample_upload_add_special_properties.py +++ b/sample-management-custom/caosdb-server/scripting/bin/sample_helpers/sample_upload_add_special_properties.py @@ -44,6 +44,15 @@ def add_special_properties(sample: db.Record, data: pd.Series) -> db.Record: return_value_if_not_none(data[get_column_header_name("Storage ID")]) is not None): container = get_container(return_value_if_not_none( data[get_column_header_name("Storage ID")])) - sample = update_property(sample, container_rt.id, contianer) + sample = update_property(sample, container_rt.id, container) + + for name in ["Curator", "Collector"]: + prop = db.get_entity_by_name(name) + if (get_column_header_name(name) in data and + return_value_if_not_none(data[get_column_header_name(name)]) is not None): + persons = [get_person(id_str) for id_str in return_value_if_not_none( + data[get_column_header_name(name)])] + sample = update_property(sample, prop.id, persons, + datatype=db.LIST(get_entity_name("Person"))) return sample