Skip to content

Commit

Permalink
[Fixes] Mark existing property as deleted_pending on importspreadsheet
Browse files Browse the repository at this point in the history
  • Loading branch information
dianaboiangiu committed Apr 19, 2017
1 parent 141d3e6 commit 9ff310a
Showing 1 changed file with 17 additions and 7 deletions.
24 changes: 17 additions & 7 deletions gemet/thesaurus/management/commands/importspreadsheet.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from django.core.management import CommandError
from django.core.management.base import BaseCommand

from gemet.thesaurus import PENDING, PUBLISHED
from gemet.thesaurus import DELETED_PENDING, PENDING, PUBLISHED
from gemet.thesaurus import models
from gemet.thesaurus.utils import get_new_code, get_search_text
from gemet.thesaurus.utils import split_text_into_terms
Expand Down Expand Up @@ -44,7 +44,6 @@ def _create_concepts(self, sheet):

if not label:
continue

properties = {
'prefLabel': label,
'definition': defin,
Expand Down Expand Up @@ -79,14 +78,16 @@ def _create_concepts(self, sheet):

self.concepts[label.lower()] = concept
for name, value in properties.iteritems():
if not models.Property.objects.filter(
pending_property = models.Property.objects.filter(
concept=concept,
language=self.language,
name=name,
value=value,
status__in=[PUBLISHED, PENDING],
).exists():
is_new_concept = True
status=PENDING
).first()
if pending_property:
pending_property.value = value
pending_property.save()
else:
models.Property.objects.create(
status=PENDING,
version_added=self.version,
Expand All @@ -95,6 +96,15 @@ def _create_concepts(self, sheet):
name=name,
value=value,
)
published_property = models.Property.objects.filter(
concept=concept,
language=self.language,
name=name,
status=PUBLISHED
).first()
if published_property:
published_property.status = DELETED_PENDING
published_property.save()
if is_new_concept:
search_text = get_search_text(
concept.id, self.language.code, PENDING, self.version)
Expand Down

0 comments on commit 9ff310a

Please sign in to comment.