2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-06-19 05:25:42 +00:00

Prevent recursive BOMs

- If A has B in its BOM, A cannot be added to the BOM of B
This commit is contained in:
Oliver
2018-04-27 23:42:23 +10:00
parent 06f9c67b11
commit f49474ace5
3 changed files with 16 additions and 2 deletions

View File

@ -353,9 +353,13 @@ class BomItem(models.Model):
def clean(self):
# A part cannot refer to itself in its BOM
if self.part == self.sub_part:
raise ValidationError(_('A part cannot contain itself as a BOM item'))
for item in self.sub_part.bom_items.all():
if self.part == item.sub_part:
raise ValidationError(_("Part '{p1}' is used in BOM for '{p2}' (recursive)".format(p1=str(self.part), p2=str(self.sub_part))))
class Meta:
verbose_name = "BOM Item"

View File

@ -60,7 +60,10 @@ $(document).ready(function(){
var button = $(this);
launchDeleteForm("#modal-delete",
button.attr('url'));
button.attr('url'),
{
reload: true
});
});
$('#bom-table').on('click', '.edit-row-button', function () {