diff --git a/InvenTree/build/models.py b/InvenTree/build/models.py
index f58f3b4206..c6b6a741da 100644
--- a/InvenTree/build/models.py
+++ b/InvenTree/build/models.py
@@ -323,7 +323,7 @@ class Build(MPTTModel):
if not self.isPartFullyAllocated(part):
return False
- return True
+ return True
def isPartFullyAllocated(self, part):
"""
diff --git a/InvenTree/build/templates/build/complete.html b/InvenTree/build/templates/build/complete.html
index a75cee2785..a48b831645 100644
--- a/InvenTree/build/templates/build/complete.html
+++ b/InvenTree/build/templates/build/complete.html
@@ -5,15 +5,15 @@
{% trans "Build" %} - {{ build }}
-{% if not build.isFullyAllocated %}
+{% if build.isFullyAllocated %}
+
+
{% trans "Build order allocation is complete" %}
+
+{% else %}
{% trans "Warning: Build order allocation is not complete" %}
{% trans "Build Order has not been fully allocated. Ensure that all Stock Items have been allocated to the Build" %}
-{% else %}
-
-
{% trans "Build order allocation is complete" %}
-
{% endif %}
diff --git a/InvenTree/order/models.py b/InvenTree/order/models.py
index 0b2ebd3707..6198eb16bc 100644
--- a/InvenTree/order/models.py
+++ b/InvenTree/order/models.py
@@ -541,7 +541,8 @@ class SalesOrderAllocation(models.Model):
if self.quantity > self.item.quantity:
errors['quantity'] = _('Allocation quantity cannot exceed stock quantity')
- if self.item.quantity - self.item.allocation_count() < self.quantity:
+ # TODO: The logic here needs improving. Do we need to subtract our own amount, or something?
+ if self.item.quantity - self.item.allocation_count() + self.quantity < self.quantity:
errors['quantity'] = _('StockItem is over-allocated')
if self.quantity <= 0: