mirror of
https://gitlab.crans.org/bde/nk20
synced 2025-10-18 03:15:10 +02:00
Compare commits
9 Commits
22d668a75c
...
main
Author | SHA1 | Date | |
---|---|---|---|
|
af36d1427a | ||
|
75a59e0a7a | ||
|
af39bf7068 | ||
|
4c40566513 | ||
|
7c45b59298 | ||
|
418268db27 | ||
|
73045586a3 | ||
|
d4cb464169 | ||
|
cb3b34f874 |
@@ -338,13 +338,13 @@ class SogeCredit(models.Model):
|
||||
last_name=self.user.last_name,
|
||||
first_name=self.user.first_name,
|
||||
bank="Société générale",
|
||||
valid=False,
|
||||
valid=True,
|
||||
)
|
||||
credit_transaction._force_save = True
|
||||
credit_transaction.save()
|
||||
credit_transaction.refresh_from_db()
|
||||
self.credit_transaction = credit_transaction
|
||||
elif not self.valid_legacy:
|
||||
elif not self.valid:
|
||||
self.credit_transaction.amount = self.amount
|
||||
self.credit_transaction._force_save = True
|
||||
self.credit_transaction.save()
|
||||
@@ -371,7 +371,7 @@ class SogeCredit(models.Model):
|
||||
The Sogé credit may be created after the user already paid its memberships.
|
||||
We query transactions and update the credit, if it is unvalid.
|
||||
"""
|
||||
if self.valid_legacy or not self.pk:
|
||||
if self.valid or not self.pk:
|
||||
return
|
||||
|
||||
# Soge do not pay BDE and kfet memberships since 2022
|
||||
@@ -403,7 +403,7 @@ class SogeCredit(models.Model):
|
||||
self.transactions.add(m.transaction)
|
||||
|
||||
for tr in self.transactions.all():
|
||||
tr.valid = False
|
||||
tr.valid = True
|
||||
tr.save()
|
||||
|
||||
def invalidate(self):
|
||||
@@ -411,7 +411,7 @@ class SogeCredit(models.Model):
|
||||
Invalidating a Société générale delete the transaction of the bank if it was already created.
|
||||
Treasurers must know what they do, With Great Power Comes Great Responsibility...
|
||||
"""
|
||||
if self.valid_legacy:
|
||||
if self.valid:
|
||||
self.credit_transaction.valid = False
|
||||
self.credit_transaction.save()
|
||||
for tr in self.transactions.all():
|
||||
@@ -420,7 +420,7 @@ class SogeCredit(models.Model):
|
||||
tr.save()
|
||||
|
||||
def validate(self, force=False):
|
||||
if self.valid_legacy and not force:
|
||||
if self.valid and not force:
|
||||
# The credit is already done
|
||||
return
|
||||
|
||||
@@ -428,6 +428,7 @@ class SogeCredit(models.Model):
|
||||
self.invalidate()
|
||||
# Refresh credit amount
|
||||
self.save()
|
||||
self.valid = True
|
||||
self.credit_transaction.valid = True
|
||||
self.credit_transaction._force_save = True
|
||||
self.credit_transaction.save()
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 284 KiB After Width: | Height: | Size: 104 KiB |
@@ -56,6 +56,7 @@ class InvoiceTable(tables.Table):
|
||||
model = Invoice
|
||||
template_name = 'django_tables2/bootstrap4.html'
|
||||
fields = ('id', 'name', 'object', 'acquitted', 'invoice',)
|
||||
order_by = ('-id',)
|
||||
|
||||
|
||||
class RemittanceTable(tables.Table):
|
||||
|
@@ -417,7 +417,7 @@ class SogeCreditListView(LoginRequiredMixin, ProtectQuerysetMixin, SingleTableVi
|
||||
)
|
||||
|
||||
if "valid" not in self.request.GET or not self.request.GET["valid"]:
|
||||
qs = qs.filter(credit_transaction__valid=False)
|
||||
qs = qs.filter(valid=False)
|
||||
|
||||
return qs
|
||||
|
||||
|
@@ -680,7 +680,7 @@ class TestWEIRegistration(TestCase):
|
||||
self.assertTrue(soge_credit.exists())
|
||||
soge_credit = soge_credit.get()
|
||||
self.assertTrue(membership.transaction in soge_credit.transactions.all())
|
||||
self.assertFalse(membership.transaction.valid)
|
||||
self.assertTrue(membership.transaction.valid)
|
||||
|
||||
# Check that if the WEI is started, we can't update a wei
|
||||
self.wei.date_start = date(2000, 1, 1)
|
||||
|
Reference in New Issue
Block a user