From ed9bd43fb0926899c3f44bb9a59eb00ce1de5e36 Mon Sep 17 00:00:00 2001 From: Stepan Krapivin Date: Tue, 7 Nov 2017 17:40:55 +0500 Subject: [PATCH] disable has_discount when DTYSModel.save --- dtys/models.py | 9 +++++++++ dtys/tasks.py | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/dtys/models.py b/dtys/models.py index 78a5385..bb05c07 100644 --- a/dtys/models.py +++ b/dtys/models.py @@ -84,3 +84,12 @@ class DTYSModel(models.Model): self.price_stopped = max(self.price_end, self.get_current_price()) self.save() + + def save(self, *args, **kwargs): + if not self.id: + pass + + ProductVariation.objects.filter(id=self.product.id)\ + .update(has_discount=False) + + super(DTYSModel, self).save(*args, **kwargs) diff --git a/dtys/tasks.py b/dtys/tasks.py index f055a1e..cb93b4a 100644 --- a/dtys/tasks.py +++ b/dtys/tasks.py @@ -7,5 +7,5 @@ app = Celery('tasks', broker='redis://localhost:6379/0') def return_dtys(dtys_id): from .models import DTYSModel - DTYSModel.objects.filter( - id=dtys_id, is_ordered=False).update(is_stopped=False) + DTYSModel.objects.filter(id=dtys_id, is_ordered=False)\ + .update(is_stopped=False, price_stopped=0)