From cb81ce310c580dfdb804e39b4b145296737d22b4 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 5 Apr 2019 15:45:26 +0200 Subject: Merge: generic function for main items - adpat for containers --- archaeological_warehouse/models.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'archaeological_warehouse') diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index ae1ef5e47..c80b4476b 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -536,6 +536,19 @@ class Container(LightHistorizedItem, OwnPerms): def _get_base_image_path(self): return self.responsible._get_base_image_path() + u"/" + self.external_id + def merge(self, item, keep_old=False): + locas = [ + cl.division.division.txt_idx + for cl in ContainerLocalisation.objects.filter(container=self).all() + ] + for loca in ContainerLocalisation.objects.filter(container=item).all(): + if loca.division.division.txt_idx not in locas: + loca.container = self + loca.save() + else: + loca.delete() + super(Container, self).merge(item, keep_old=keep_old) + @classmethod def get_query_owns(cls, ishtaruser): return Q(history_creator=ishtaruser.user_ptr) | \ -- cgit v1.2.3