diff options
Diffstat (limited to 'archaeological_operations/models.py')
| -rw-r--r-- | archaeological_operations/models.py | 19 | 
1 files changed, 11 insertions, 8 deletions
| diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index 246934d91..0c4f6330b 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -685,16 +685,16 @@ class ClosedItem(object):  class ParcelItem:      def clean_parcel_duplicates(self): -        parcels = [] +        parcels = {}          for p in self.parcels.order_by('pk').all():              if p.associated_file:                  continue              key = (p.section, p.parcel_number, p.year, p.town.pk,                     p.public_domain)              if key in parcels: -                p.delete() +                parcels[key].merge(p)              else: -                parcels.append(key) +                parcels[key] = p  class Operation(ClosedItem, DocumentItem, BaseHistorizedItem, @@ -1399,10 +1399,10 @@ class Operation(ClosedItem, DocumentItem, BaseHistorizedItem,          return self.towns.values('numero_insee').all()[0]['numero_insee'][:2]      def grouped_parcels(self): -        return Parcel.grouped_parcels(list(self.parcels.all())) +        return Parcel.grouped_parcels(list(self.parcels.distinct().all()))      def render_parcels(self): -        return Parcel.render_parcels(list(self.parcels.all())) +        return Parcel.render_parcels(list(self.parcels.distinct().all()))      def get_town_centroid(self):          q = self.towns.filter(center__isnull=False).annotate( @@ -2511,8 +2511,11 @@ class Parcel(LightHistorizedItem):                      grouped[-1].parcel_numbers = []                  nb = ""                  if parcel.parcel_number: -                    nb = "0" * (12 - len(parcel.parcel_number)) + \ -                        parcel.parcel_number +                    if parcel.parcel_number == "0": +                        nb = "0" +                    else: +                        nb = "0" * (12 - len(parcel.parcel_number)) + \ +                            parcel.parcel_number                  if parcel.public_domain:                      if nb:                          nb += " " @@ -2542,7 +2545,7 @@ class Parcel(LightHistorizedItem):              res += parcels.section + ' '              res += ", ".join(parcels.parcel_numbers)              if parcels.year: -                res += " (%s)" % str(parcels.year) +                res += " ({})".format(parcels.year)          return res      def long_label(self): | 
