From dd58f8997715bb2e0ac02811fec6e8eb4086c5aa Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 17 Jun 2021 14:51:41 +0200 Subject: [PATCH] fix for part with no bom --- InvenTree/part/views.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/InvenTree/part/views.py b/InvenTree/part/views.py index 3a874c3635..b371b9f9a4 100644 --- a/InvenTree/part/views.py +++ b/InvenTree/part/views.py @@ -846,17 +846,18 @@ class PartPricingView(PartDetail): ctx['price_history'] = ret # BOM Information for Pie-Chart - bom_items = [{'name': str(a.sub_part), 'price': a.sub_part.get_price_range(quantity), 'q': a.quantity} for a in part.bom_items.all()] - if [True for a in bom_items if len(set(a['price'])) == 2]: - ctx['bom_parts'] = [{ - 'name': a['name'], - 'min_price': str((a['price'][0] * a['q']) / quantity), - 'max_price': str((a['price'][1] * a['q']) / quantity)} for a in bom_items] - ctx['bom_pie_min'] = True - else: - ctx['bom_parts'] = [{ - 'name': a['name'], - 'price': str((a['price'][0] * a['q']) / quantity)} for a in bom_items] + if part.has_bom: + bom_items = [{'name': str(a.sub_part), 'price': a.sub_part.get_price_range(quantity), 'q': a.quantity} for a in part.bom_items.all()] + if [True for a in bom_items if len(set(a['price'])) == 2]: + ctx['bom_parts'] = [{ + 'name': a['name'], + 'min_price': str((a['price'][0] * a['q']) / quantity), + 'max_price': str((a['price'][1] * a['q']) / quantity)} for a in bom_items] + ctx['bom_pie_min'] = True + else: + ctx['bom_parts'] = [{ + 'name': a['name'], + 'price': str((a['price'][0] * a['q']) / quantity)} for a in bom_items] return ctx