Merge branch 'faster_ci' of https://gitlab.crans.org/bde/nk20 into faster_ci

This commit is contained in:
Otthorn 2021-02-23 23:38:26 +01:00
commit 4da523a1ba
4 changed files with 13 additions and 6 deletions

View File

@ -223,7 +223,8 @@ class Transaction(PolymorphicModel):
# Check that the amounts stay between big integer bounds # Check that the amounts stay between big integer bounds
diff_source, diff_dest = self.validate() diff_source, diff_dest = self.validate()
if not self.source.is_active or not self.destination.is_active: if not (hasattr(self, '_force_save') and self._force_save) \
and (not self.source.is_active or not self.destination.is_active):
raise ValidationError(_("The transaction can't be saved since the source note " raise ValidationError(_("The transaction can't be saved since the source note "
"or the destination note is not active.")) "or the destination note is not active."))
@ -271,7 +272,7 @@ class RecurrentTransaction(Transaction):
) )
def clean(self): def clean(self):
if self.template.destination != self.destination: if self.template.destination != self.destination and not (hasattr(self, '_force_save') and self._force_save):
raise ValidationError( raise ValidationError(
_("The destination of this transaction must equal to the destination of the template.")) _("The destination of this transaction must equal to the destination of the template."))
return super().clean() return super().clean()

View File

@ -43,4 +43,5 @@ def delete_transaction(instance, **_kwargs):
""" """
if not hasattr(instance, "_no_signal"): if not hasattr(instance, "_no_signal"):
instance.valid = False instance.valid = False
instance._force_save = True
instance.save() instance.save()

@ -1 +1 @@
Subproject commit dbe7bf65917df40b0ce476f357d04726e20b406f Subproject commit 8ec7d68a169c1072aec427925f3bf2fd54eab5a3

View File

@ -381,9 +381,14 @@ class SogeCredit(models.Model):
tr.valid = True tr.valid = True
tr.created_at = timezone.now() tr.created_at = timezone.now()
tr.save() tr.save()
self.credit_transaction.valid = False if self.credit_transaction:
self.credit_transaction.reason += " (invalide)" # If the soge credit is deleted while the user is not validated yet,
self.credit_transaction.save() # there is not credit transaction.
# There is a credit transaction iff the user declares that no bank account
# was opened after the validation of the account.
self.credit_transaction.valid = False
self.credit_transaction.reason += " (invalide)"
self.credit_transaction.save()
super().delete(**kwargs) super().delete(**kwargs)
class Meta: class Meta: