diff --git a/InvenTree/InvenTree/models.py b/InvenTree/InvenTree/models.py index bbac3a9b03..8be2db7c52 100644 --- a/InvenTree/InvenTree/models.py +++ b/InvenTree/InvenTree/models.py @@ -13,6 +13,7 @@ class Company(models.Model): abstract = True name = models.CharField(max_length=100, unique=True) + description = models.CharField(max_length=500, blank=True) website = models.URLField(blank=True) address = models.CharField(max_length=200, blank=True) diff --git a/InvenTree/InvenTree/urls.py b/InvenTree/InvenTree/urls.py index f5b3b94f9b..0c9c5465eb 100644 --- a/InvenTree/InvenTree/urls.py +++ b/InvenTree/InvenTree/urls.py @@ -11,7 +11,8 @@ from part.urls import part_urls from stock.urls import stock_api_urls, stock_api_loc_urls from stock.urls import stock_urls -from supplier.urls import cust_urls, manu_urls, supplier_part_urls, price_break_urls, supplier_urls +from supplier.urls import supplier_api_urls, supplier_api_part_urls +from supplier.urls import supplier_urls from django.conf import settings from django.conf.urls.static import static @@ -41,11 +42,11 @@ apipatterns = [ url(r'^bom/', include(bom_api_urls)), # Supplier URLs - url(r'^supplier/', include(supplier_urls)), - url(r'^supplier-part/', include(supplier_part_urls)), - url(r'^price-break/', include(price_break_urls)), - url(r'^manufacturer/', include(manu_urls)), - url(r'^customer/', include(cust_urls)), + url(r'^supplier/', include(supplier_api_urls)), + url(r'^supplier-part/', include(supplier_api_part_urls)), + #url(r'^price-break/', include(price_break_urls)), + #url(r'^manufacturer/', include(manu_urls)), + #url(r'^customer/', include(cust_urls)), # Tracking URLs #url(r'^track/', include(part_track_urls)), @@ -69,6 +70,8 @@ urlpatterns = [ url(r'^part/', include(part_urls)), url(r'^stock/', include(stock_urls)), + url(r'^supplier/', include(supplier_urls)), + url(r'^api-doc/', include_docs_urls(title='InvenTree API')), url(r'^admin/', admin.site.urls), diff --git a/InvenTree/part/templates/part/detail.html b/InvenTree/part/templates/part/detail.html index 6e34cc4fd9..da475651b4 100644 --- a/InvenTree/part/templates/part/detail.html +++ b/InvenTree/part/templates/part/detail.html @@ -9,10 +9,18 @@ Used in {{ part.usedInCount }} other parts.
There are {{ part.stock }} units in stock. +
+{% if part.supplier_parts.all|length > 0 %} +This part is available from {{ part.supplier_parts.all|length }} suppliers. +{% else %} +There are no suppliers defined for this part. +{% endif %} +

{% if part.trackable %} Part tracking {% else %} {{ part.name }} does not have part tracking enabled {% endif %} + {% endblock %} \ No newline at end of file diff --git a/InvenTree/part/templates/part/stock.html b/InvenTree/part/templates/part/stock.html index 04cac037f9..480c538e44 100644 --- a/InvenTree/part/templates/part/stock.html +++ b/InvenTree/part/templates/part/stock.html @@ -20,7 +20,9 @@ Total in stock: {{ part.stock }} {{ stock.location.name }} {% if stock.supplier_part %} + {{ stock.supplier_part.supplier.name }} | {{ stock.supplier_part.SKU }} + {% endif %} {% if stock.stocktake_date %}{{ stock.stocktake_date }}{% endif %} diff --git a/InvenTree/part/templates/part/supplier.html b/InvenTree/part/templates/part/supplier.html new file mode 100644 index 0000000000..ae72958fce --- /dev/null +++ b/InvenTree/part/templates/part/supplier.html @@ -0,0 +1,24 @@ +{% extends "part/part_base.html" %} + +{% block details %} + +{% if part.supplier_parts.all|length > 0 %} + + + + + + +{% for spart in part.supplier_parts.all %} + + + + + +{% endfor %} +
SupplierSKUURL
{{ spart.supplier.name }}{{ spart.SKU }}{{ spart.URL }}
+{% else %} +There are no suppliers defined for this part, sorry! +{% endif %} + +{% endblock %} \ No newline at end of file diff --git a/InvenTree/part/urls.py b/InvenTree/part/urls.py index 5943401302..96f05f5bba 100644 --- a/InvenTree/part/urls.py +++ b/InvenTree/part/urls.py @@ -42,6 +42,7 @@ part_detail_urls = [ url(r'^track/?', views.track, name='part-track'), url(r'^bom/?', views.bom, name='part-bom'), url(r'^stock/?', views.stock, name='part-stock'), + url(r'^suppliers/?', views.suppliers, name='part-suppliers'), url('', views.detail, name='part-detail'), ] diff --git a/InvenTree/part/views.py b/InvenTree/part/views.py index 47eea2608a..2091ee2387 100644 --- a/InvenTree/part/views.py +++ b/InvenTree/part/views.py @@ -64,3 +64,8 @@ def track(request, pk): return render(request, 'part/track.html', {'part': part}) + +def suppliers(request, pk): + part = get_object_or_404(Part, pk=pk) + + return render(request, 'part/supplier.html', {'part' : part}) diff --git a/InvenTree/stock/templates/stock/detail.html b/InvenTree/stock/templates/stock/detail.html index e9b758c8d2..c2bb1dd036 100644 --- a/InvenTree/stock/templates/stock/detail.html +++ b/InvenTree/stock/templates/stock/detail.html @@ -7,7 +7,7 @@