From e384f9e94cc1fe6b749ed849b4ae31f51d315a3a Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Thu, 23 Apr 2020 20:42:59 +1000 Subject: [PATCH] Order date adjustment Sales order now has a "shipment date" --- .../migrations/0029_auto_20200423_1042.py | 30 +++++++++++++++++++ InvenTree/order/models.py | 17 ++++++++--- InvenTree/order/serializers.py | 3 +- 3 files changed, 44 insertions(+), 6 deletions(-) create mode 100644 InvenTree/order/migrations/0029_auto_20200423_1042.py diff --git a/InvenTree/order/migrations/0029_auto_20200423_1042.py b/InvenTree/order/migrations/0029_auto_20200423_1042.py new file mode 100644 index 0000000000..2f7e0072ca --- /dev/null +++ b/InvenTree/order/migrations/0029_auto_20200423_1042.py @@ -0,0 +1,30 @@ +# Generated by Django 3.0.5 on 2020-04-23 10:42 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('order', '0028_auto_20200423_0956'), + ] + + operations = [ + migrations.RenameField( + model_name='salesorder', + old_name='complete_date', + new_name='shipment_date', + ), + migrations.RemoveField( + model_name='salesorder', + name='issue_date', + ), + migrations.AddField( + model_name='salesorder', + name='shipped_by', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/InvenTree/order/models.py b/InvenTree/order/models.py index 1f8dd2f2ac..136402f471 100644 --- a/InvenTree/order/models.py +++ b/InvenTree/order/models.py @@ -82,10 +82,6 @@ class Order(models.Model): related_name='+' ) - issue_date = models.DateField(blank=True, null=True) - - complete_date = models.DateField(blank=True, null=True) - notes = MarkdownxField(blank=True, help_text=_('Order notes')) @@ -124,6 +120,10 @@ class PurchaseOrder(Order): related_name='+' ) + issue_date = models.DateField(blank=True, null=True) + + complete_date = models.DateField(blank=True, null=True) + def get_absolute_url(self): return reverse('po-detail', kwargs={'pk': self.id}) @@ -280,6 +280,15 @@ class SalesOrder(Order): customer_reference = models.CharField(max_length=64, blank=True, help_text=_("Customer order reference code")) + shipment_date = models.DateField(blank=True, null=True) + + shipped_by = models.ForeignKey( + User, + on_delete=models.SET_NULL, + blank=True, null=True, + related_name='+' + ) + def is_fully_allocated(self): """ Return True if all line items are fully allocated """ diff --git a/InvenTree/order/serializers.py b/InvenTree/order/serializers.py index 6f85be6ef0..df3b68c924 100644 --- a/InvenTree/order/serializers.py +++ b/InvenTree/order/serializers.py @@ -123,8 +123,7 @@ class SalesOrderSerializer(InvenTreeModelSerializer): fields = [ 'pk', - 'issue_date', - 'complete_date', + 'shipment_date', 'creation_date', 'description', 'line_items',