diff --git a/InvenTree/company/models.py b/InvenTree/company/models.py index 1d119ddf51..bb86230b70 100644 --- a/InvenTree/company/models.py +++ b/InvenTree/company/models.py @@ -9,6 +9,7 @@ import os from django.db import models from django.urls import reverse +from django.conf import settings def rename_company_image(instance, filename): @@ -78,6 +79,14 @@ class Company(models.Model): """ Get the web URL for the detail view for this Company """ return reverse('company-detail', kwargs={'pk': self.id}) + def get_image_url(self): + """ Return the URL of the image for this company """ + + if self.image: + return os.path.join(settings.MEDIA_URL, str(self.image.url)) + else: + return '' + @property def part_count(self): """ The number of parts supplied by this company """ diff --git a/InvenTree/part/serializers.py b/InvenTree/part/serializers.py index 7a12243a81..97588650cb 100644 --- a/InvenTree/part/serializers.py +++ b/InvenTree/part/serializers.py @@ -128,6 +128,7 @@ class SupplierPartSerializer(serializers.ModelSerializer): part_detail = PartBriefSerializer(source='part', many=False, read_only=True) supplier_name = serializers.CharField(source='supplier.name', read_only=True) + supplier_logo = serializers.CharField(source='supplier.get_image_url', read_only=True) class Meta: model = SupplierPart @@ -138,6 +139,7 @@ class SupplierPartSerializer(serializers.ModelSerializer): 'part_detail', 'supplier', 'supplier_name', + 'supplier_logo', 'SKU', 'manufacturer', 'MPN', diff --git a/InvenTree/part/templates/part/supplier.html b/InvenTree/part/templates/part/supplier.html index 00f7fa41d0..4999694651 100644 --- a/InvenTree/part/templates/part/supplier.html +++ b/InvenTree/part/templates/part/supplier.html @@ -63,7 +63,7 @@ field: 'supplier_name', title: 'Supplier', formatter: function(value, row, index, field) { - return renderLink(value, '/company/' + row.supplier + '/'); + return imageHoverIcon(row.supplier_logo) + renderLink(value, '/company/' + row.supplier + '/'); } }, { diff --git a/InvenTree/static/css/inventree.css b/InvenTree/static/css/inventree.css index 17802bd58e..5147547275 100644 --- a/InvenTree/static/css/inventree.css +++ b/InvenTree/static/css/inventree.css @@ -13,12 +13,14 @@ /* Part image icons with full-display on mouse hover */ .hover-img-thumb { + background: #eee; width: 28px; height: 28px; border: 1px solid #cce; } .hover-img-large { + background: #eee; display: none; position: absolute; z-index: 999;