mirror of
				https://github.com/inventree/InvenTree.git
				synced 2025-10-31 05:05:42 +00:00 
			
		
		
		
	Client side QR Codes (#4357)
* Add JS for qrcodejs Ref: https://davidshimjs.github.io/qrcodejs/ * Simple function for rendering a QR code * Refactor QR code view for Part * Replace QR code view for SupplierPart * Refactor QR codes for stock item and stock location models * Remove base QRCodeView entirely
This commit is contained in:
		| @@ -270,10 +270,10 @@ src="{% static 'img/blank_image.png' %}" | ||||
| {% if barcodes %} | ||||
|  | ||||
| $("#show-qr-code").click(function() { | ||||
|     launchModalForm("{% url 'supplier-part-qr' part.pk %}", | ||||
|     { | ||||
|         no_post: true, | ||||
|     }); | ||||
|     showQRDialog( | ||||
|         '{% trans "Supplier Part QR Code" %}', | ||||
|         '{"supplierpart": {{ part.pk }}}' | ||||
|     ); | ||||
| }); | ||||
|  | ||||
| $("#barcode-link").click(function() { | ||||
|   | ||||
| @@ -26,7 +26,6 @@ manufacturer_part_urls = [ | ||||
|  | ||||
| supplier_part_urls = [ | ||||
|     re_path(r'^(?P<pk>\d+)/', include([ | ||||
|         re_path('^qr_code/?', views.SupplierPartQRCode.as_view(), name='supplier-part-qr'), | ||||
|         re_path('^.*$', views.SupplierPartDetail.as_view(template_name='company/supplier_part.html'), name='supplier-part-detail'), | ||||
|     ])) | ||||
|  | ||||
|   | ||||
| @@ -4,7 +4,7 @@ from django.urls import reverse | ||||
| from django.utils.translation import gettext_lazy as _ | ||||
| from django.views.generic import DetailView, ListView | ||||
|  | ||||
| from InvenTree.views import InvenTreeRoleMixin, QRCodeView | ||||
| from InvenTree.views import InvenTreeRoleMixin | ||||
| from plugin.views import InvenTreePluginViewMixin | ||||
|  | ||||
| from .models import Company, ManufacturerPart, SupplierPart | ||||
| @@ -112,18 +112,3 @@ class SupplierPartDetail(InvenTreePluginViewMixin, DetailView): | ||||
|     context_object_name = 'part' | ||||
|     queryset = SupplierPart.objects.all() | ||||
|     permission_required = 'purchase_order.view' | ||||
|  | ||||
|  | ||||
| class SupplierPartQRCode(QRCodeView): | ||||
|     """View for displaying a QR code for a StockItem object.""" | ||||
|  | ||||
|     ajax_form_title = _("Stock Item QR Code") | ||||
|     role_required = 'stock.view' | ||||
|  | ||||
|     def get_qr_data(self): | ||||
|         """Generate QR code data for the StockItem.""" | ||||
|         try: | ||||
|             part = SupplierPart.objects.get(id=self.pk) | ||||
|             return part.format_barcode() | ||||
|         except SupplierPart.DoesNotExist: | ||||
|             return None | ||||
|   | ||||
		Reference in New Issue
	
	Block a user