mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Fix error in BomItem creation
This commit is contained in:
parent
970257d423
commit
ecfde46838
@ -858,13 +858,19 @@ class BomItem(models.Model):
|
||||
"""
|
||||
|
||||
# A part cannot refer to itself in its BOM
|
||||
if self.part == self.sub_part:
|
||||
raise ValidationError({'sub_part': _('Part cannot be added to its own Bill of Materials')})
|
||||
|
||||
# Test for simple recursion
|
||||
for item in self.sub_part.bom_items.all():
|
||||
if self.part == item.sub_part:
|
||||
raise ValidationError({'sub_part': _("Part '{p1}' is used in BOM for '{p2}' (recursive)".format(p1=str(self.part), p2=str(self.sub_part)))})
|
||||
try:
|
||||
if self.sub_part is not None and self.part is not None:
|
||||
if self.part == self.sub_part:
|
||||
raise ValidationError({'sub_part': _('Part cannot be added to its own Bill of Materials')})
|
||||
|
||||
# Test for simple recursion
|
||||
for item in self.sub_part.bom_items.all():
|
||||
if self.part == item.sub_part:
|
||||
raise ValidationError({'sub_part': _("Part '{p1}' is used in BOM for '{p2}' (recursive)".format(p1=str(self.part), p2=str(self.sub_part)))})
|
||||
|
||||
except Part.DoesNotExist:
|
||||
# A blank Part will be caught elsewhere
|
||||
pass
|
||||
|
||||
class Meta:
|
||||
verbose_name = "BOM Item"
|
||||
|
Loading…
Reference in New Issue
Block a user