mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Reintroduce option to clear (delete) BOM before uploading new data
This commit is contained in:
parent
1b6dacd5ba
commit
6e6f9d6c2f
@ -716,6 +716,35 @@ class BomImportUploadSerializer(DataFileUploadSerializer):
|
||||
|
||||
TARGET_MODEL = BomItem
|
||||
|
||||
class Meta:
|
||||
fields = [
|
||||
'data_file',
|
||||
'part',
|
||||
'clear_existing_bom',
|
||||
]
|
||||
|
||||
part = serializers.PrimaryKeyRelatedField(
|
||||
queryset=Part.objects.all(),
|
||||
required=True,
|
||||
allow_null=False,
|
||||
many=False,
|
||||
)
|
||||
|
||||
clear_existing_bom = serializers.BooleanField(
|
||||
label=_('Clear Existing BOM'),
|
||||
help_text=_('Delete existing BOM items before uploading')
|
||||
)
|
||||
|
||||
def save(self):
|
||||
|
||||
data = self.validated_data
|
||||
|
||||
if data.get('clear_existing_bom', False):
|
||||
part = data['part']
|
||||
|
||||
with transaction.atomic():
|
||||
part.bom_items.all().delete()
|
||||
|
||||
|
||||
class BomImportExtractSerializer(DataFileExtractSerializer):
|
||||
"""
|
||||
|
@ -81,6 +81,11 @@ $('#bom-upload').click(function() {
|
||||
method: 'POST',
|
||||
fields: {
|
||||
data_file: {},
|
||||
part: {
|
||||
value: {{ part.pk }},
|
||||
hidden: true,
|
||||
},
|
||||
clear_existing_bom: {},
|
||||
},
|
||||
title: '{% trans "Upload BOM File" %}',
|
||||
onSuccess: function(response) {
|
||||
|
Loading…
Reference in New Issue
Block a user