mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Add ability to edit and delete a purchase order line item
This commit is contained in:
parent
fe5bb23d13
commit
c9cddd2a19
@ -49,3 +49,4 @@ class EditPurchaseOrderLineItemForm(HelperForm):
|
||||
'reference',
|
||||
'notes',
|
||||
]
|
||||
|
||||
|
5
InvenTree/order/templates/order/po_lineitem_delete.html
Normal file
5
InvenTree/order/templates/order/po_lineitem_delete.html
Normal file
@ -0,0 +1,5 @@
|
||||
{% extends "modal_delete_form.html" %}
|
||||
|
||||
{% block pre_form_content %}
|
||||
Are you sure you wish to delete this line item?
|
||||
{% endblock %}
|
@ -110,10 +110,10 @@ InvenTree | {{ order }}
|
||||
<td>
|
||||
<div class='btn-group'>
|
||||
<button class='btn btn-default btn-edit' id='edit-line-item-{{ line.id }} title='Edit line item' onclick='editPurchaseOrderLineItem()'>
|
||||
<span line='{{ line.id }}' class='glyphicon glyphicon-small glyphicon-edit'></span>
|
||||
<span url="{% url 'po-line-item-edit' line.id %}" line='{{ line.id }}' class='glyphicon glyphicon-small glyphicon-edit'></span>
|
||||
</button>
|
||||
<button class='btn btn-default btn-remove' id='remove-line-item-{{ line.id }' title='Remove line item' type='button' onclick='removePurchaseOrderLineItem()'>
|
||||
<span line='{{ line.id }}' class='glyphicon glyphicon-small glyphicon-remove'></span>
|
||||
<span url="{% url 'po-line-item-delete' line.id %}" line='{{ line.id }}' class='glyphicon glyphicon-small glyphicon-remove'></span>
|
||||
</button>
|
||||
</div>
|
||||
</td>
|
||||
|
@ -17,9 +17,17 @@ purchase_order_detail_urls = [
|
||||
url(r'^.*$', views.PurchaseOrderDetail.as_view(), name='purchase-order-detail'),
|
||||
]
|
||||
|
||||
po_line_item_detail_urls = [
|
||||
|
||||
url(r'^edit/', views.POLineItemEdit.as_view(), name='po-line-item-edit'),
|
||||
url(r'^delete/', views.POLineItemDelete.as_view(), name='po-line-item-delete'),
|
||||
]
|
||||
|
||||
po_line_urls = [
|
||||
|
||||
url(r'^new/', views.POLineItemCreate.as_view(), name='po-line-item-create'),
|
||||
|
||||
url(r'^(?P<pk>\d+)/', include(po_line_item_detail_urls)),
|
||||
]
|
||||
|
||||
purchase_order_urls = [
|
||||
|
@ -19,7 +19,7 @@ from part.models import Part
|
||||
|
||||
from . import forms as order_forms
|
||||
|
||||
from InvenTree.views import AjaxView, AjaxCreateView, AjaxUpdateView
|
||||
from InvenTree.views import AjaxView, AjaxCreateView, AjaxUpdateView, AjaxDeleteView
|
||||
from InvenTree.helpers import str2bool
|
||||
|
||||
from InvenTree.status_codes import OrderStatus
|
||||
@ -539,8 +539,32 @@ class POLineItemCreate(AjaxCreateView):
|
||||
|
||||
|
||||
class POLineItemEdit(AjaxUpdateView):
|
||||
""" View for editing a PurchaseOrderLineItem object in a modal form.
|
||||
"""
|
||||
|
||||
model = PurchaseOrderLineItem
|
||||
form_class = order_forms.EditPurchaseOrderLineItemForm
|
||||
ajax_template_name = 'modal_form.html'
|
||||
ajax_form_action = 'Edit Line Item'
|
||||
ajax_form_title = 'Edit Line Item'
|
||||
|
||||
def get_form(self):
|
||||
form = super().get_form()
|
||||
|
||||
# Prevent user from editing order once line item is assigned
|
||||
form.fields.pop('order')
|
||||
|
||||
return form
|
||||
|
||||
|
||||
class POLineItemDelete(AjaxDeleteView):
|
||||
""" View for deleting a PurchaseOrderLineItem object in a modal form
|
||||
"""
|
||||
|
||||
model = PurchaseOrderLineItem
|
||||
ajax_form_title = 'Delete Line Item'
|
||||
ajax_template_name = 'order/po_lineitem_delete.html'
|
||||
|
||||
def get_data(self):
|
||||
return {
|
||||
'danger': 'Deleted line item',
|
||||
}
|
@ -66,4 +66,36 @@ function newPurchaseOrderFromOrderWizard(e) {
|
||||
$('#modal-form').find(dropdown).append(option).trigger('change');
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
function editPurchaseOrderLineItem(e) {
|
||||
|
||||
/* Edit a purchase order line item in a modal form.
|
||||
*/
|
||||
|
||||
e = e || window.event;
|
||||
|
||||
var src = e.target || e.srcElement;
|
||||
|
||||
var url = $(src).attr('url');
|
||||
|
||||
launchModalForm(url, {
|
||||
reload: true,
|
||||
});
|
||||
}
|
||||
|
||||
function removePurchaseOrderLineItem(e) {
|
||||
|
||||
/* Delete a purchase order line item in a modal form
|
||||
*/
|
||||
|
||||
e = e || window.event;
|
||||
|
||||
var src = e.target || e.srcElement;
|
||||
|
||||
var url = $(src).attr('url');
|
||||
|
||||
launchModalForm(url, {
|
||||
reload: true,
|
||||
});
|
||||
}
|
Loading…
Reference in New Issue
Block a user