fix - bug of edit organization by field

This commit is contained in:
2025-12-31 15:39:40 +03:30
parent 650eaa445f
commit 64bd4c9ade
2 changed files with 5 additions and 5 deletions

View File

@@ -310,7 +310,7 @@ class OrganizationViewSet(BaseViewSet, ModelViewSet, DynamicSearchMixin):
serializer = self.get_serializer( serializer = self.get_serializer(
instance, instance,
data=request.data['organization'], data=request.data['organization'],
partial=partial partial=True
) )
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
organization = serializer.save() organization = serializer.save()

View File

@@ -280,7 +280,7 @@ class OrganizationSerializer(serializers.ModelSerializer):
""" """
# check national_unique_id # check national_unique_id
national_unique_id = attrs['national_unique_id'] national_unique_id = attrs.get('national_unique_id', 0)
if not self.instance: if not self.instance:
if self.Meta.model.objects.filter(national_unique_id=national_unique_id).exists(): if self.Meta.model.objects.filter(national_unique_id=national_unique_id).exists():
@@ -292,9 +292,9 @@ class OrganizationSerializer(serializers.ModelSerializer):
# check organization type field # check organization type field
# if is repeatable of type, organization will not be recreating # if is repeatable of type, organization will not be recreating
org_type = attrs['type'] org_type = attrs.get('type', None)
if not self.instance: if not self.instance:
if not org_type.is_repeatable: if org_type is not None and not org_type.is_repeatable:
if org_type.org_type_field == 'PR' and self.Meta.model.objects.filter( if org_type.org_type_field == 'PR' and self.Meta.model.objects.filter(
type=org_type, type=org_type,
province=attrs['province'] province=attrs['province']
@@ -315,7 +315,7 @@ class OrganizationSerializer(serializers.ModelSerializer):
# check organization type field when updating # check organization type field when updating
elif self.instance: elif self.instance:
if not org_type.is_repeatable: if org_type is not None and not org_type.is_repeatable:
if org_type.org_type_field == 'PR' and self.instance.province != attrs[ if org_type.org_type_field == 'PR' and self.instance.province != attrs[
'province'] and self.Meta.model.objects.filter( 'province'] and self.Meta.model.objects.filter(
type=org_type, type=org_type,