Django backend for WorkX project
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Dieses Repo ist archiviert. Du kannst Dateien sehen und es klonen, kannst aber nicht pushen oder Issues/Pull-Requests öffnen.

29 Zeilen
830 B

  1. from django.db import models
  2. from project.models import Project
  3. class Invoice(models.Model):
  4. project = models.ForeignKey(Project, on_delete=models.CASCADE)
  5. invoice_id = models.CharField(max_length=15)
  6. raised_date = models.DateField()
  7. due_date = models.DateField()
  8. paid_date = models.DateField(null=True, blank=True)
  9. is_archived = models.BooleanField(default=False)
  10. def __str__(self):
  11. return self.invoice_id
  12. class Item(models.Model):
  13. name = models.TextField(blank=False, null=False)
  14. amount = models.DecimalField(max_digits=15, decimal_places=2)
  15. quantity = models.IntegerField()
  16. invoice = models.ForeignKey(Invoice, on_delete=models.CASCADE)
  17. @property
  18. def item_total(self):
  19. return self.amount * self.quantity
  20. def __str__(self):
  21. return self.name