summaryrefslogtreecommitdiff
path: root/talerbank/app/models.py
diff options
context:
space:
mode:
authorMarcello Stanisci <marcello.stanisci@inria.fr>2017-03-21 14:30:28 +0100
committerMarcello Stanisci <marcello.stanisci@inria.fr>2017-03-21 14:30:28 +0100
commita37e84da7c180ac44c6b9c43ab4219be67d375b8 (patch)
treec905d4db9f700a358e85c0b22a135339f1ccf1a7 /talerbank/app/models.py
parentb2adea3efc1fdc13ee7cf56e229b8b64513b187f (diff)
downloadbank-a37e84da7c180ac44c6b9c43ab4219be67d375b8.tar.gz
bank-a37e84da7c180ac44c6b9c43ab4219be67d375b8.tar.bz2
bank-a37e84da7c180ac44c6b9c43ab4219be67d375b8.zip
fix #4824's related issues
Diffstat (limited to 'talerbank/app/models.py')
-rw-r--r--talerbank/app/models.py27
1 files changed, 24 insertions, 3 deletions
diff --git a/talerbank/app/models.py b/talerbank/app/models.py
index 0543fbb..f87caa2 100644
--- a/talerbank/app/models.py
+++ b/talerbank/app/models.py
@@ -28,13 +28,34 @@ class BankAccount(models.Model):
currency = models.CharField(max_length=12, default="")
account_no = models.AutoField(primary_key=True)
user = models.OneToOneField(User, on_delete=models.CASCADE)
-
+ def _get_balance(self):
+ return dict(value=self.balance_value,
+ fraction=self.balance_fraction,
+ currency=self.currency)
+ def _set_balance(self, amount):
+ self.balance_value = amount["value"]
+ self.balance_fraction = amount["fraction"]
+ self.currency = amount["currency"]
+ balance_obj = property(_get_balance, _set_balance)
class BankTransaction(models.Model):
amount_value = models.IntegerField(default=0)
amount_fraction = models.IntegerField(default=0)
currency = models.CharField(max_length=12)
- debit_account = models.ForeignKey(BankAccount, on_delete=models.CASCADE, related_name="debit_account")
- credit_account = models.ForeignKey(BankAccount, on_delete=models.CASCADE, related_name="credit_account")
+ debit_account = models.ForeignKey(BankAccount,
+ on_delete=models.CASCADE,
+ related_name="debit_account")
+ credit_account = models.ForeignKey(BankAccount,
+ on_delete=models.CASCADE,
+ related_name="credit_account")
subject = models.CharField(default="(no subject given)", max_length=200)
date = models.DateTimeField(auto_now=True)
+ def _get_amount(self):
+ return dict(value=self.amount_value,
+ fraction=self.amount_fraction,
+ currency=self.currency)
+ def _set_amount(self, amount):
+ self.amount_value = amount["value"]
+ self.amount_fraction = amount["fraction"]
+ self.currency = amount["currency"]
+ amount_obj = property(_get_amount, _set_amount)