from django.db import models from project.models import Project class Invoice(models.Model): project = models.ForeignKey(Project, on_delete=models.CASCADE) invoice_id = models.CharField(max_length=15) raised_date = models.DateField() due_date = models.DateField() paid_date = models.DateField(null=True, blank=True) is_archived = models.BooleanField(default=False) def __str__(self): return self.invoice_id class Item(models.Model): name = models.TextField(blank=False, null=False) amount = models.DecimalField(max_digits=15, decimal_places=2) quantity = models.IntegerField() invoice = models.ForeignKey(Invoice, on_delete=models.CASCADE) @property def item_total(self): return self.amount * self.quantity def __str__(self): return self.id