|
|
@@ -1,8 +1,45 @@ |
|
|
|
from django.db import models |
|
|
|
|
|
|
|
|
|
|
|
class TaxType(models.Model): |
|
|
|
name = models.CharField(max_length=15) |
|
|
|
percentage = models.DecimalField() |
|
|
|
|
|
|
|
def __str__(self): |
|
|
|
return self.name |
|
|
|
|
|
|
|
|
|
|
|
class Country(models.Model): |
|
|
|
name = models.CharField(max_length=30) |
|
|
|
|
|
|
|
def __str__(self): |
|
|
|
return self.name |
|
|
|
|
|
|
|
|
|
|
|
class State(models.Model): |
|
|
|
name = models.CharField(max_length=30) |
|
|
|
country = models.OneToOneField(Country, on_delete=models.CASCADE) |
|
|
|
|
|
|
|
def __str__(self): |
|
|
|
return self.name |
|
|
|
|
|
|
|
|
|
|
|
class City(models.Model): |
|
|
|
name = models.CharField(max_length=30) |
|
|
|
state = models.OneToOneField(State, on_delete=models.CASCADE) |
|
|
|
|
|
|
|
def __str__(self): |
|
|
|
return self.name |
|
|
|
|
|
|
|
|
|
|
|
class Client(models.Model): |
|
|
|
name = models.CharField(max_length=30) |
|
|
|
profile_picture = models.ImageField(upload_to='client_images', null=True, blank=True) |
|
|
|
city = models.ForeignKey(City, on_delete=models.CASCADE) |
|
|
|
address_line1 = models.CharField(max_length=50) |
|
|
|
address_line2 = models.CharField(max_length=50) |
|
|
|
postal_code = models.CharField(max_length=15) |
|
|
|
tax_type = models.ForeignKey(TaxType, on_delete=models.CASCADE) |
|
|
|
tax_id = models.CharField(max_length=30) |
|
|
|
|
|
|
|
def __str__(self): |
|
|
|