From a42371598c086baa1cc306e9e4634a3c710fb918 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Tue, 23 Jul 2019 11:55:51 +1000 Subject: [PATCH] Fix part deletion template - Display list of stock items which will be thusly deleted --- InvenTree/InvenTree/helpers.py | 2 +- InvenTree/part/templates/part/partial_delete.html | 8 ++++---- InvenTree/stock/models.py | 11 ++++++++--- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/InvenTree/InvenTree/helpers.py b/InvenTree/InvenTree/helpers.py index f4e8f8b2e9..a34199d38c 100644 --- a/InvenTree/InvenTree/helpers.py +++ b/InvenTree/InvenTree/helpers.py @@ -176,7 +176,7 @@ def ExtractSerialNumbers(serials, expected_quantity): else: numbers.append(n) except ValueError: - print("Invalid group: {g}".format(g=group)) + errors.append("Invalid group: {g}".format(g=group)) if len(errors) > 0: raise ValidationError(errors) diff --git a/InvenTree/part/templates/part/partial_delete.html b/InvenTree/part/templates/part/partial_delete.html index b6516057bb..7b51bf2e89 100644 --- a/InvenTree/part/templates/part/partial_delete.html +++ b/InvenTree/part/templates/part/partial_delete.html @@ -16,12 +16,12 @@

{% endif %} -{% if part.locations.all|length > 0 %} +{% if part.stock_items.all|length > 0 %}
-

There are {{ part.locations.all|length }} stock entries defined for this part. If you delete this part, the following stock entries will also be deleted: +

There are {{ part.stock_items.all|length }} stock entries defined for this part. If you delete this part, the following stock entries will also be deleted:

diff --git a/InvenTree/stock/models.py b/InvenTree/stock/models.py index 7695a0e3ae..4f4c74d6a2 100644 --- a/InvenTree/stock/models.py +++ b/InvenTree/stock/models.py @@ -528,9 +528,14 @@ class StockItem(models.Model): return True def __str__(self): - s = '{n} x {part}'.format( - n=self.quantity, - part=self.part.full_name) + if self.part.trackable and self.serial: + s = '{part} #{sn}'.format( + part=self.part.full_name, + sn=self.serial) + else: + s = '{n} x {part}'.format( + n=self.quantity, + part=self.part.full_name) if self.location: s += ' @ {loc}'.format(loc=self.location.name)