From 9b6962834536ddb157d3fe9625d39eb8383b46c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Szyma=C5=84ski?= Date: Mon, 2 Mar 2020 11:08:35 +0100 Subject: [PATCH 1/4] Create invoice model --- saleor/order/migrations/0079_invoice.py | 37 +++++++++++++++++++++++++ saleor/order/models.py | 7 +++++ 2 files changed, 44 insertions(+) create mode 100644 saleor/order/migrations/0079_invoice.py diff --git a/saleor/order/migrations/0079_invoice.py b/saleor/order/migrations/0079_invoice.py new file mode 100644 index 00000000000..3f62592eac7 --- /dev/null +++ b/saleor/order/migrations/0079_invoice.py @@ -0,0 +1,37 @@ +# Generated by Django 2.2.10 on 2020-03-02 10:03 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("order", "0078_auto_20200221_0257"), + ] + + operations = [ + migrations.CreateModel( + name="Invoice", + fields=[ + ( + "id", + models.AutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("number", models.CharField(max_length=64)), + ("created", models.DateTimeField(auto_now_add=True)), + ("url", models.URLField(max_length=256)), + ( + "order", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, to="order.Order" + ), + ), + ], + ), + ] diff --git a/saleor/order/models.py b/saleor/order/models.py index d0b98f2cc7a..54e6038fb87 100644 --- a/saleor/order/models.py +++ b/saleor/order/models.py @@ -500,3 +500,10 @@ class Meta: def __repr__(self): return f"{self.__class__.__name__}(type={self.type!r}, user={self.user!r})" + + +class Invoice(models.Model): + order = models.ForeignKey(Order, on_delete=models.CASCADE) + number = models.CharField(max_length=64) + created = models.DateTimeField(auto_now_add=True) + url = models.URLField(max_length=256) From d826ff577fedfec14ffd369872b6bac3bb7302cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Szyma=C5=84ski?= Date: Tue, 3 Mar 2020 05:40:43 +0100 Subject: [PATCH 2/4] Change order field to be nullable --- saleor/order/migrations/0079_invoice.py | 6 ++++-- saleor/order/models.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/saleor/order/migrations/0079_invoice.py b/saleor/order/migrations/0079_invoice.py index 3f62592eac7..80e81843e8b 100644 --- a/saleor/order/migrations/0079_invoice.py +++ b/saleor/order/migrations/0079_invoice.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.10 on 2020-03-02 10:03 +# Generated by Django 2.2.10 on 2020-03-03 04:39 import django.db.models.deletion from django.db import migrations, models @@ -29,7 +29,9 @@ class Migration(migrations.Migration): ( "order", models.ForeignKey( - on_delete=django.db.models.deletion.CASCADE, to="order.Order" + null=True, + on_delete=django.db.models.deletion.CASCADE, + to="order.Order", ), ), ], diff --git a/saleor/order/models.py b/saleor/order/models.py index 54e6038fb87..86ad8a0fd90 100644 --- a/saleor/order/models.py +++ b/saleor/order/models.py @@ -503,7 +503,7 @@ def __repr__(self): class Invoice(models.Model): - order = models.ForeignKey(Order, on_delete=models.CASCADE) + order = models.ForeignKey(Order, null=True, on_delete=models.CASCADE) number = models.CharField(max_length=64) created = models.DateTimeField(auto_now_add=True) url = models.URLField(max_length=256) From 88fc279ddca7a5a536b156241052bb9745eefd8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Szyma=C5=84ski?= Date: Wed, 4 Mar 2020 11:18:02 +0100 Subject: [PATCH 3/4] Invoice order change to set_null instead of cascade --- saleor/order/migrations/0079_invoice.py | 4 ++-- saleor/order/models.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/saleor/order/migrations/0079_invoice.py b/saleor/order/migrations/0079_invoice.py index 80e81843e8b..26afe9c104c 100644 --- a/saleor/order/migrations/0079_invoice.py +++ b/saleor/order/migrations/0079_invoice.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.10 on 2020-03-03 04:39 +# Generated by Django 2.2.10 on 2020-03-04 10:17 import django.db.models.deletion from django.db import migrations, models @@ -30,7 +30,7 @@ class Migration(migrations.Migration): "order", models.ForeignKey( null=True, - on_delete=django.db.models.deletion.CASCADE, + on_delete=django.db.models.deletion.SET_NULL, to="order.Order", ), ), diff --git a/saleor/order/models.py b/saleor/order/models.py index 86ad8a0fd90..ac1a5a28eb3 100644 --- a/saleor/order/models.py +++ b/saleor/order/models.py @@ -503,7 +503,7 @@ def __repr__(self): class Invoice(models.Model): - order = models.ForeignKey(Order, null=True, on_delete=models.CASCADE) + order = models.ForeignKey(Order, null=True, on_delete=models.SET_NULL) number = models.CharField(max_length=64) created = models.DateTimeField(auto_now_add=True) url = models.URLField(max_length=256) From c4e3e29ec9889490732d38ad72c65a8459473530 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Szyma=C5=84ski?= Date: Thu, 5 Mar 2020 09:31:54 +0100 Subject: [PATCH 4/4] Recreate invoice migration after master merge, increase field limits --- .../order/migrations/{0079_invoice.py => 0080_invoice.py} | 8 ++++---- saleor/order/models.py | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) rename saleor/order/migrations/{0079_invoice.py => 0080_invoice.py} (80%) diff --git a/saleor/order/migrations/0079_invoice.py b/saleor/order/migrations/0080_invoice.py similarity index 80% rename from saleor/order/migrations/0079_invoice.py rename to saleor/order/migrations/0080_invoice.py index 26afe9c104c..647341902dd 100644 --- a/saleor/order/migrations/0079_invoice.py +++ b/saleor/order/migrations/0080_invoice.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.10 on 2020-03-04 10:17 +# Generated by Django 2.2.10 on 2020-03-05 08:30 import django.db.models.deletion from django.db import migrations, models @@ -7,7 +7,7 @@ class Migration(migrations.Migration): dependencies = [ - ("order", "0078_auto_20200221_0257"), + ("order", "0079_auto_20200304_0752"), ] operations = [ @@ -23,9 +23,9 @@ class Migration(migrations.Migration): verbose_name="ID", ), ), - ("number", models.CharField(max_length=64)), + ("number", models.CharField(max_length=255)), ("created", models.DateTimeField(auto_now_add=True)), - ("url", models.URLField(max_length=256)), + ("url", models.URLField(max_length=2048)), ( "order", models.ForeignKey( diff --git a/saleor/order/models.py b/saleor/order/models.py index fa3aa8c617d..6f9b8b0b12b 100644 --- a/saleor/order/models.py +++ b/saleor/order/models.py @@ -499,6 +499,6 @@ def __repr__(self): class Invoice(models.Model): order = models.ForeignKey(Order, null=True, on_delete=models.SET_NULL) - number = models.CharField(max_length=64) + number = models.CharField(max_length=255) created = models.DateTimeField(auto_now_add=True) - url = models.URLField(max_length=256) + url = models.URLField(max_length=2048)