mirror of
				https://github.com/inventree/InvenTree.git
				synced 2025-10-30 20:55:42 +00:00 
			
		
		
		
	Splits order.js into multiple files
- Javascript files was becoming extremely large - Hard to debug and find code - Split into purchase_order / return_order / sales_order
This commit is contained in:
		| @@ -108,7 +108,10 @@ translated_javascript_urls = [ | |||||||
|     re_path(r'^modals.js', DynamicJsView.as_view(template_name='js/translated/modals.js'), name='modals.js'), |     re_path(r'^modals.js', DynamicJsView.as_view(template_name='js/translated/modals.js'), name='modals.js'), | ||||||
|     re_path(r'^order.js', DynamicJsView.as_view(template_name='js/translated/order.js'), name='order.js'), |     re_path(r'^order.js', DynamicJsView.as_view(template_name='js/translated/order.js'), name='order.js'), | ||||||
|     re_path(r'^part.js', DynamicJsView.as_view(template_name='js/translated/part.js'), name='part.js'), |     re_path(r'^part.js', DynamicJsView.as_view(template_name='js/translated/part.js'), name='part.js'), | ||||||
|  |     re_path(r'^purchase_order.js', DynamicJsView.as_view(template_name='js/translated/purchase_order.js'), name='purchase_order.js'), | ||||||
|  |     re_path(r'^return_order.js', DynamicJsView.as_view(template_name='js/translated/return_order.js'), name='return_order.js'), | ||||||
|     re_path(r'^report.js', DynamicJsView.as_view(template_name='js/translated/report.js'), name='report.js'), |     re_path(r'^report.js', DynamicJsView.as_view(template_name='js/translated/report.js'), name='report.js'), | ||||||
|  |     re_path(r'^sales_order.js', DynamicJsView.as_view(template_name='js/translated/sales_order.js'), name='sales_order.js'), | ||||||
|     re_path(r'^search.js', DynamicJsView.as_view(template_name='js/translated/search.js'), name='search.js'), |     re_path(r'^search.js', DynamicJsView.as_view(template_name='js/translated/search.js'), name='search.js'), | ||||||
|     re_path(r'^stock.js', DynamicJsView.as_view(template_name='js/translated/stock.js'), name='stock.js'), |     re_path(r'^stock.js', DynamicJsView.as_view(template_name='js/translated/stock.js'), name='stock.js'), | ||||||
|     re_path(r'^plugin.js', DynamicJsView.as_view(template_name='js/translated/plugin.js'), name='plugin.js'), |     re_path(r'^plugin.js', DynamicJsView.as_view(template_name='js/translated/plugin.js'), name='plugin.js'), | ||||||
|   | |||||||
| @@ -164,7 +164,10 @@ | |||||||
| <script defer type='text/javascript' src="{% i18n_static 'model_renderers.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'model_renderers.js' %}"></script> | ||||||
| <script defer type='text/javascript' src="{% i18n_static 'order.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'order.js' %}"></script> | ||||||
| <script defer type='text/javascript' src="{% i18n_static 'part.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'part.js' %}"></script> | ||||||
|  | <script defer type='text/javascript' src="{% i18n_static 'purchase_order.js' %}"></script> | ||||||
|  | <script defer type='text/javascript' src="{% i18n_static 'return_order.js' %}"></script> | ||||||
| <script defer type='text/javascript' src="{% i18n_static 'report.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'report.js' %}"></script> | ||||||
|  | <script defer type='text/javascript' src="{% i18n_static 'sales_order.js' %}"></script> | ||||||
| <script defer type='text/javascript' src="{% i18n_static 'search.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'search.js' %}"></script> | ||||||
| <script defer type='text/javascript' src="{% i18n_static 'stock.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'stock.js' %}"></script> | ||||||
| <script defer type='text/javascript' src="{% i18n_static 'plugin.js' %}"></script> | <script defer type='text/javascript' src="{% i18n_static 'plugin.js' %}"></script> | ||||||
|   | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										2290
									
								
								InvenTree/templates/js/translated/purchase_order.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2290
									
								
								InvenTree/templates/js/translated/purchase_order.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										218
									
								
								InvenTree/templates/js/translated/return_order.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										218
									
								
								InvenTree/templates/js/translated/return_order.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,218 @@ | |||||||
|  | {% load i18n %} | ||||||
|  | {% load inventree_extras %} | ||||||
|  |  | ||||||
|  | /* globals | ||||||
|  |     companyFormFields, | ||||||
|  |     constructForm, | ||||||
|  |     createSupplierPart, | ||||||
|  |     global_settings, | ||||||
|  |     imageHoverIcon, | ||||||
|  |     inventreeGet, | ||||||
|  |     launchModalForm, | ||||||
|  |     loadTableFilters, | ||||||
|  |     makeIconBadge, | ||||||
|  |     purchaseOrderStatusDisplay, | ||||||
|  |     receivePurchaseOrderItems, | ||||||
|  |     renderLink, | ||||||
|  |     salesOrderStatusDisplay, | ||||||
|  |     setupFilterList, | ||||||
|  |     supplierPartFields, | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | /* exported | ||||||
|  |     allocateStockToSalesOrder, | ||||||
|  |     cancelPurchaseOrder, | ||||||
|  |     cancelSalesOrder, | ||||||
|  |     completePurchaseOrder, | ||||||
|  |     completeSalesOrder, | ||||||
|  |     completeSalesOrderShipment, | ||||||
|  |     completePendingShipments, | ||||||
|  |     createPurchaseOrder, | ||||||
|  |     createPurchaseOrderLineItem, | ||||||
|  |     createReturnOrder, | ||||||
|  |     createSalesOrder, | ||||||
|  |     createSalesOrderLineItem, | ||||||
|  |     createSalesOrderShipment, | ||||||
|  |     duplicatePurchaseOrder, | ||||||
|  |     editPurchaseOrder, | ||||||
|  |     editPurchaseOrderLineItem, | ||||||
|  |     editSalesOrder, | ||||||
|  |     exportOrder, | ||||||
|  |     issuePurchaseOrder, | ||||||
|  |     loadPurchaseOrderLineItemTable, | ||||||
|  |     loadPurchaseOrderExtraLineTable | ||||||
|  |     loadPurchaseOrderTable, | ||||||
|  |     loadReturnOrderTable, | ||||||
|  |     loadSalesOrderAllocationTable, | ||||||
|  |     loadSalesOrderLineItemTable, | ||||||
|  |     loadSalesOrderExtraLineTable | ||||||
|  |     loadSalesOrderShipmentTable, | ||||||
|  |     loadSalesOrderTable, | ||||||
|  |     newPurchaseOrderFromOrderWizard, | ||||||
|  |     newSupplierPartFromOrderWizard, | ||||||
|  |     orderParts, | ||||||
|  |     removeOrderRowFromOrderWizard, | ||||||
|  |     removePurchaseOrderLineItem, | ||||||
|  |     loadOrderTotal, | ||||||
|  |     extraLineFields, | ||||||
|  | */ | ||||||
|  |  | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * Construct a set of fields for a ReturnOrder form | ||||||
|  |  */ | ||||||
|  | function returnOrderFields(options={}) { | ||||||
|  |  | ||||||
|  |     let fields = { | ||||||
|  |         reference: { | ||||||
|  |             icon: 'fa-hashtag', | ||||||
|  |         }, | ||||||
|  |         description: {}, | ||||||
|  |         customer: { | ||||||
|  |             icon: 'fa-user-tie', | ||||||
|  |             secondary: { | ||||||
|  |                 title: '{% trans "Add Customer" %}', | ||||||
|  |                 fields: function() { | ||||||
|  |                     var fields = companyFormFields(); | ||||||
|  |                     fields.is_customer.value = true; | ||||||
|  |                     return fields; | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|  |         customer_reference: {}, | ||||||
|  |         link: { | ||||||
|  |             icon: 'fa-link', | ||||||
|  |         }, | ||||||
|  |         responsible: { | ||||||
|  |             icon: 'fa-user', | ||||||
|  |         } | ||||||
|  |     }; | ||||||
|  |  | ||||||
|  |     return fields; | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * Create a new Return Order | ||||||
|  |  */ | ||||||
|  | function createReturnOrder(options={}) { | ||||||
|  |     let fields = returnOrderFields(options); | ||||||
|  |  | ||||||
|  |     if (options.customer) { | ||||||
|  |         fields.customer.value = options.customer; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     constructForm('{% url "api-return-order-list" %}', { | ||||||
|  |         method: 'POST', | ||||||
|  |         fields: fields, | ||||||
|  |         title: '{% trans "Create Return Order" %}', | ||||||
|  |         onSuccess: function(data) { | ||||||
|  |             location.href = `/order/return-order/${data.pk}/`; | ||||||
|  |         }, | ||||||
|  |     }); | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | /* | ||||||
|  |  * Load a table of return orders | ||||||
|  |  */ | ||||||
|  | function loadReturnOrderTable(table, options={}) { | ||||||
|  |  | ||||||
|  |     // Ensure the table starts in a known state | ||||||
|  |     $(table).bootstrapTable('destroy'); | ||||||
|  |  | ||||||
|  |     options.params = options.params || {}; | ||||||
|  |     options.params['customer_detail'] = true; | ||||||
|  |  | ||||||
|  |     var filters = loadTableFilters('returnorder'); | ||||||
|  |  | ||||||
|  |     for (var key in options.params) { | ||||||
|  |         filters[key] = options.params[key]; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     setupFilterList('returnorder', $(table), '#filter-list-returnorder', {download: true}); | ||||||
|  |  | ||||||
|  |     let display_mode = inventreeLoad('returnorder-table-display-mode', 'list'); | ||||||
|  |  | ||||||
|  |     let is_calendar = display_mode == 'calendar'; | ||||||
|  |  | ||||||
|  |     $(table).inventreeTable({ | ||||||
|  |         url: '{% url "api-return-order-list" %}', | ||||||
|  |         queryParams: filters, | ||||||
|  |         name: 'returnorder', | ||||||
|  |         sidePagination: 'server', | ||||||
|  |         original: options.params, | ||||||
|  |         showColumns: !is_calendar, | ||||||
|  |         search: !is_calendar, | ||||||
|  |         showCustomViewButton: false, | ||||||
|  |         showCustomView: is_calendar, | ||||||
|  |         disablePagination: is_calendar, | ||||||
|  |         formatNoMatches: function() { | ||||||
|  |             return '{% trans "No return orders found" %}'; | ||||||
|  |         }, | ||||||
|  |         onRefresh: function() { | ||||||
|  |             loadReturnOrderTable(table, options); | ||||||
|  |         }, | ||||||
|  |         onLoadSuccess: function() { | ||||||
|  |             // TODO | ||||||
|  |         }, | ||||||
|  |         columns: [ | ||||||
|  |             { | ||||||
|  |                 title: '', | ||||||
|  |                 checkbox: true, | ||||||
|  |                 visible: true, | ||||||
|  |                 switchable: false, | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 sortable: true, | ||||||
|  |                 field: 'reference', | ||||||
|  |                 title: '{% trans "Return Order" %}', | ||||||
|  |                 formatter: function(value, row) { | ||||||
|  |                     var html = renderLink(value, `/order/return-order/${row.pk}/`); | ||||||
|  |                     return html; | ||||||
|  |                 }, | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 sortable: true, | ||||||
|  |                 sortName: 'customer__name', | ||||||
|  |                 field: 'customer_detail', | ||||||
|  |                 title: '{% trans "Customer" %}', | ||||||
|  |                 formatter: function(value, row) { | ||||||
|  |  | ||||||
|  |                     if (!row.customer_detail) { | ||||||
|  |                         return '{% trans "Invalid Customer" %}'; | ||||||
|  |                     } | ||||||
|  |  | ||||||
|  |                     return imageHoverIcon(row.customer_detail.image) + renderLink(row.customer_detail.name, `/company/${row.customer}/sales-orders/`); | ||||||
|  |                 } | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 sortable: true, | ||||||
|  |                 field: 'customer_reference', | ||||||
|  |                 title: '{% trans "Customer Reference" %}', | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 sortable: false, | ||||||
|  |                 field: 'description', | ||||||
|  |                 title: '{% trans "Description" %}', | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 sortable: true, | ||||||
|  |                 field: 'status', | ||||||
|  |                 title: '{% trans "Status" %}', | ||||||
|  |                 formatter: function(value, row) { | ||||||
|  |                     return 'todo'; | ||||||
|  |                     return salesOrderStatusDisplay(row.status); | ||||||
|  |                 } | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 sortable: true, | ||||||
|  |                 field: 'creation_date', | ||||||
|  |                 title: '{% trans "Creation Date" %}', | ||||||
|  |                 formatter: function(value) { | ||||||
|  |                     return renderDate(value); | ||||||
|  |                 } | ||||||
|  |             }, | ||||||
|  |         ] | ||||||
|  |     }); | ||||||
|  | } | ||||||
							
								
								
									
										2332
									
								
								InvenTree/templates/js/translated/sales_order.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2332
									
								
								InvenTree/templates/js/translated/sales_order.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user