def to_representation(self, instance): ret = super(BankAccountSerializer, self).to_representation(instance) ret['balance_view'] = localize_signed_amount_currency( instance.balance, instance.currency) ret['balance_initial_view'] = localize_signed_amount_currency( instance.balance_initial, instance.currency) return ret
def to_representation(self, instance): ret = super(BankAccountDetailSerializer, self).to_representation(instance) ret['balance_current_view'] = localize_signed_amount_currency( BankTransaction.objects.get_current_balance(instance), instance.currency, ) ret['balance_reconciled_view'] = localize_signed_amount_currency( BankTransaction.objects.get_reconciled_balance(instance), instance.currency, ) return ret
def to_representation(self, instance): timestamp_ms = time.mktime(instance.date.timetuple()) * 1000 return { "id": instance.pk, "url": self._context['request'].build_absolute_uri( reverse('banktransactions:banktransaction-detail', kwargs={ 'pk': instance.pk, }), ), "title": "{label}, {amount}".format( label=instance.label, amount=localize_signed_amount_currency( instance.amount, instance.currency, ), ), "class": "event-important" if instance.amount < 0 else "event-success", "start": timestamp_ms, "end": timestamp_ms, "extra_data": { "label": instance.label, "balance_total": instance.balance_total, "balance_total_view": localize_signed_amount( instance.balance_total, ) if instance.balance_total is not None else None, "balance_reconciled": instance.balance_reconciled, "balance_reconciled_view": localize_signed_amount( instance.balance_reconciled, ) if instance.balance_reconciled is not None else None, }, }
def to_representation(self, instance): ret = super( BankTransactionDetailSerializer, self).to_representation(instance) ret['date_view'] = date_format(instance.date, 'SHORT_DATE_FORMAT') ret['amount_localized'] = localize_signed_amount(instance.amount) ret['amount_currency'] = localize_signed_amount_currency( instance.amount, instance.currency) ret['payment_method_display'] = instance.get_payment_method_display() ret['status_display'] = instance.get_status_display() return ret
def test_localize_signed_amount_currency_fr_fr(self): self.assertEqual( localize_signed_amount_currency(Decimal('1547.23'), 'EUR'), '+1\xa0547,23\xa0€', )
def test_localize_signed_amount_currency_en_us(self): self.assertEqual( localize_signed_amount_currency(Decimal('1547.23'), 'USD'), "+$1,547.23", )