feat: added customer addresses and shipping method

This commit is contained in:
2024-12-23 13:27:00 +01:00
parent b2f8febdb6
commit a1f6983148
7 changed files with 279 additions and 426 deletions
+23 -2
View File
@@ -78,6 +78,7 @@ class Product(TimestampedModel):
slug = models.SlugField(
default="", blank=True, null=True, max_length=128, verbose_name=_("Slug")
)
hidden = models.BooleanField(default=False, db_index=True, verbose_name=_("oculto"))
def __str__(self):
return self.name
@@ -414,7 +415,7 @@ class CustomerAddress(models.Model):
BILLING = "BILL", _("facturación")
SHIPPING = "SHIP", _("envío")
user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name=_("usuario"))
user = models.ForeignKey(User, on_delete=models.CASCADE, null=True, verbose_name=_("usuario"))
vat_id = models.CharField(
max_length=16,
blank=True,
@@ -422,6 +423,9 @@ class CustomerAddress(models.Model):
default="",
verbose_name=_("número de identificación fiscal"),
)
full_name = models.CharField(
max_length=128, blank=False, null=False, verbose_name=_("dirección")
)
address = models.CharField(
max_length=128, blank=False, null=False, verbose_name=_("dirección")
)
@@ -451,8 +455,25 @@ class CustomerAddress(models.Model):
default=Types.SHIPPING,
verbose_name=_("tipo de dirección"),
)
default = models.BooleanField(default=True)
default = models.BooleanField(default=True, verbose_name=_("por defecto"))
hidden = models.BooleanField(default=False, db_index=True, verbose_name=_("oculto"))
class Meta:
verbose_name = _("dirección de cliente")
verbose_name_plural = _("direcciones de cliente")
class ShippingMethod(models.Model):
name = models.CharField(max_length=64, verbose_name=_("nombre"))
description = models.CharField(
max_length=256, default="", blank=True, verbose_name=_("description")
)
url = models.URLField(default="", blank=True, verbose_name=_("url"))
shipping_product = models.ForeignKey(
"shop.Product", on_delete=models.CASCADE, verbose_name=_("producto de envío")
)
enabled = models.BooleanField(default=True, verbose_name=_("habilitado"))
class Meta:
verbose_name = _("método de envío")
verbose_name_plural = _("métodos de envío")