Implement suggestions from code review

This commit is contained in:
shamoon 2023-12-19 07:45:40 -08:00
parent 8abdf2cfee
commit 146a36244c

View File

@ -549,8 +549,8 @@ class CustomFieldInstanceSerializer(serializers.ModelSerializer):
["value_document_ids"], ["value_document_ids"],
) )
@staticmethod
def remove_doclink( def remove_doclink(
self,
document: Document, document: Document,
field: CustomField, field: CustomField,
target_doc_id: int, target_doc_id: int,
@ -625,16 +625,16 @@ class DocumentSerializer(
if "created_date" in validated_data: if "created_date" in validated_data:
validated_data.pop("created_date") validated_data.pop("created_date")
if instance.custom_fields.count() > 0 and "custom_fields" in validated_data: if instance.custom_fields.count() > 0 and "custom_fields" in validated_data:
incoming_custom_fields = [
field["field"] for field in validated_data["custom_fields"]
]
for custom_field_instance in instance.custom_fields.filter( for custom_field_instance in instance.custom_fields.filter(
field__data_type=CustomField.FieldDataType.DOCUMENTLINK, field__data_type=CustomField.FieldDataType.DOCUMENTLINK,
): ):
if custom_field_instance.field not in [ if custom_field_instance.field not in incoming_custom_fields:
field["field"] for field in validated_data["custom_fields"]
]:
# Doc link field is being removed entirely # Doc link field is being removed entirely
for doc_id in custom_field_instance.value: for doc_id in custom_field_instance.value:
CustomFieldInstanceSerializer.remove_doclink( CustomFieldInstanceSerializer.remove_doclink(
None,
instance, instance,
custom_field_instance.field, custom_field_instance.field,
doc_id, doc_id,