Вызов декоратора свойств через значение в модуле django

У меня проблема с декоратором свойств через значения из моделей,

Моделями являются

class Bills(models.Model):

    salesPerson = models.ForeignKey(User, on_delete = models.SET_NULL, null=True)
    purchasedPerson = models.ForeignKey(Members, on_delete = models.PROTECT, null=True)
    cash = models.BooleanField(default=True)
    totalAmount = models.IntegerField()
    advance = models.IntegerField(null=True, blank=True)
    remarks = models.CharField(max_length = 200, null=True, blank=True)
    created = models.DateTimeField(auto_now_add=True)
    update = models.DateTimeField(auto_now=True)

    class Meta:
        ordering = ['-update', '-created']

    def __str__(self):
        return str(self.purchasedPerson)
    
    @property
    def balance(self):
        return 0 if self.cash == True else self.totalAmount - self.advance

я работаю над методом union, чтобы отображать кредитные счета и любые оплаченные транзакции.

я вызываю метод как

bill_trans = Bills.objects.filter(purchasedPerson__id__contains = pk, cash = False).values(
                                         'purchasedPerson__name', 'cash',
                                         'totalAmount', 'remarks',
                                         'created')

вместо общей суммы мне нужно свойство баланса возможно ли это или есть какой-нибудь другой способ сделать объединение для

class MemberTrans(models.Model):
    purchasedPerson = models.ForeignKey(Members, on_delete = models.PROTECT, null=True)
    paid = models.BooleanField(default=False)
    amount = models.IntegerField()
    remarks = models.CharField(max_length = 200)
    created = models.DateTimeField(auto_now_add=True)
    update = models.DateTimeField(auto_now=True)

    class Meta:
        ordering = ['-update', '-created']

    def __str__(self):
        return str(self.purchasedPerson)

mem_trans = MemberTrans.objects.filter(purchasedPerson__id__contains = pk).values(
        'purchasedPerson__name', 'paid', 'amount', 'remarks', 'created'
    )

Bill_trans должен объединиться с mem_trans

Вернуться на верх