mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Ability to delete multiple stock items
This commit is contained in:
parent
789515e39d
commit
2261973331
@ -310,6 +310,18 @@ function loadStockTable(table, options) {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#multi-item-delete").click(function() {
|
||||||
|
var selections = $("#stock-table").bootstrapTable("getSelections");
|
||||||
|
|
||||||
|
var stock = [];
|
||||||
|
|
||||||
|
selections.forEach(function(item) {
|
||||||
|
stock.push(item.pk);
|
||||||
|
});
|
||||||
|
|
||||||
|
stockAdjustment('delete');
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -256,6 +256,7 @@ class StockAdjust(AjaxView, FormMixin):
|
|||||||
- Add items to stock
|
- Add items to stock
|
||||||
- Count items
|
- Count items
|
||||||
- Move stock
|
- Move stock
|
||||||
|
- Delete stock items
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@ -361,15 +362,16 @@ class StockAdjust(AjaxView, FormMixin):
|
|||||||
self.stock_action = request.GET.get('action', '').lower()
|
self.stock_action = request.GET.get('action', '').lower()
|
||||||
|
|
||||||
# Pick a default action...
|
# Pick a default action...
|
||||||
if self.stock_action not in ['move', 'count', 'take', 'add']:
|
if self.stock_action not in ['move', 'count', 'take', 'add', 'delete']:
|
||||||
self.stock_action = 'count'
|
self.stock_action = 'count'
|
||||||
|
|
||||||
# Choose the form title based on the action
|
# Choose the form title based on the action
|
||||||
titles = {
|
titles = {
|
||||||
'move': 'Move Stock',
|
'move': _('Move Stock Items'),
|
||||||
'count': 'Count Stock',
|
'count': _('Count Stock Items'),
|
||||||
'take': 'Remove Stock',
|
'take': _('Remove From Stock'),
|
||||||
'add': 'Add Stock'
|
'add': _('Add Stock Items'),
|
||||||
|
'delete': _('Delete Stock Items')
|
||||||
}
|
}
|
||||||
|
|
||||||
self.ajax_form_title = titles[self.stock_action]
|
self.ajax_form_title = titles[self.stock_action]
|
||||||
@ -383,7 +385,7 @@ class StockAdjust(AjaxView, FormMixin):
|
|||||||
|
|
||||||
self.request = request
|
self.request = request
|
||||||
|
|
||||||
self.stock_action = request.POST.get('stock_action', 'invalid').lower()
|
self.stock_action = request.POST.get('stock_action', 'invalid').strip().lower()
|
||||||
|
|
||||||
# Update list of stock items
|
# Update list of stock items
|
||||||
self.stock_items = self.get_POST_items()
|
self.stock_items = self.get_POST_items()
|
||||||
@ -468,6 +470,9 @@ class StockAdjust(AjaxView, FormMixin):
|
|||||||
elif self.stock_action == 'count':
|
elif self.stock_action == 'count':
|
||||||
return self.do_count()
|
return self.do_count()
|
||||||
|
|
||||||
|
elif self.stock_action == 'delete':
|
||||||
|
return self.do_delete()
|
||||||
|
|
||||||
else:
|
else:
|
||||||
return 'No action performed'
|
return 'No action performed'
|
||||||
|
|
||||||
@ -547,6 +552,23 @@ class StockAdjust(AjaxView, FormMixin):
|
|||||||
n=count,
|
n=count,
|
||||||
dest=destination.pathstring))
|
dest=destination.pathstring))
|
||||||
|
|
||||||
|
def do_delete(self):
|
||||||
|
""" Delete multiple stock items """
|
||||||
|
|
||||||
|
count = 0
|
||||||
|
# note = self.request.POST['note']
|
||||||
|
|
||||||
|
for item in self.stock_items:
|
||||||
|
|
||||||
|
# TODO - In the future, StockItems should not be 'deleted'
|
||||||
|
# TODO - Instead, they should be marked as "inactive"
|
||||||
|
|
||||||
|
item.delete()
|
||||||
|
|
||||||
|
count += 1
|
||||||
|
|
||||||
|
return _("Deleted {n} stock items".format(n=count))
|
||||||
|
|
||||||
|
|
||||||
class StockItemEdit(AjaxUpdateView):
|
class StockItemEdit(AjaxUpdateView):
|
||||||
"""
|
"""
|
||||||
|
Loading…
Reference in New Issue
Block a user