2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-09-09 20:21:24 +00:00

Button / view / form to create a new SalesOrderLineItem

This commit is contained in:
Oliver Walters
2020-04-21 09:02:10 +10:00
parent 617fbf2f02
commit b204618e79
4 changed files with 75 additions and 4 deletions

View File

@@ -1008,7 +1008,47 @@ class POLineItemCreate(AjaxCreateView):
order = PurchaseOrder.objects.get(id=order_id)
initials['order'] = order
except PurchaseOrder.DoesNotExist:
except (PurchaseOrder.DoesNotExist, ValueError):
pass
return initials
class SOLineItemCreate(AjaxCreateView):
""" Ajax view for creating a new SalesOrderLineItem object """
model = SalesOrderLineItem
context_order_name = 'line'
form_class = order_forms.EditSalesOrderLineItemForm
ajax_form_title = _('Add Line Item')
def get_initial(self):
"""
Extract initial data for this line item:
Options:
order: The SalesOrder object
part: The Part object
"""
initials = super().get_initial().copy()
order_id = self.request.GET.get('order', None)
part_id = self.request.GET.get('part', None)
if order_id:
try:
order = SalesOrder.objects.get(id=order_id)
initials['order'] = order
except (SalesOrder.DoesNotExist, ValueError):
pass
if part_id:
try:
part = Part.objects.get(id=part_id)
if part.salable:
initials['part'] = part
except (Part.DoesNotExist, ValueError):
pass
return initials