From 1400128f9f4be1bfb22e2feed296d3cfff8f337c Mon Sep 17 00:00:00 2001 From: Oliver Date: Wed, 18 Apr 2018 01:21:18 +1000 Subject: [PATCH] SupplierOrderLineItem gets reference to internal part - For keeping track of how many of an internal part is on order! --- .../migrations/0014_auto_20180417_1520.py | 31 +++++++++++++++++++ InvenTree/supplier/models.py | 7 +++-- 2 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 InvenTree/supplier/migrations/0014_auto_20180417_1520.py diff --git a/InvenTree/supplier/migrations/0014_auto_20180417_1520.py b/InvenTree/supplier/migrations/0014_auto_20180417_1520.py new file mode 100644 index 0000000000..aceb80a5e5 --- /dev/null +++ b/InvenTree/supplier/migrations/0014_auto_20180417_1520.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.12 on 2018-04-17 15:20 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('part', '0022_auto_20180417_0819'), + ('supplier', '0013_merge_20180417_1517'), + ] + + operations = [ + migrations.RenameField( + model_name='supplierorderlineitem', + old_name='part', + new_name='supplier_part', + ), + migrations.AddField( + model_name='supplierorderlineitem', + name='internal_part', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='part.Part'), + ), + migrations.AlterUniqueTogether( + name='supplierorderlineitem', + unique_together=set([('order', 'line_number'), ('order', 'internal_part'), ('order', 'supplier_part')]), + ), + ] diff --git a/InvenTree/supplier/models.py b/InvenTree/supplier/models.py index a3917a4997..ff9c91f5a9 100644 --- a/InvenTree/supplier/models.py +++ b/InvenTree/supplier/models.py @@ -160,14 +160,17 @@ class SupplierOrderLineItem(models.Model): class Meta: unique_together = [ ('order', 'line_number'), - ('order', 'part'), + ('order', 'supplier_part'), + ('order', 'internal_part'), ] order = models.ForeignKey(SupplierOrder, on_delete=models.CASCADE) line_number = models.PositiveIntegerField(default=1) - part = models.ForeignKey(SupplierPart, null=True, blank=True, on_delete=models.SET_NULL) + internal_part = models.ForeignKey(Part, null=True, blank=True, on_delete=models.SET_NULL) + + supplier_part = models.ForeignKey(SupplierPart, null=True, blank=True, on_delete=models.SET_NULL) quantity = models.PositiveIntegerField(default=1)