From 3ad50beda86e1282ff2b3279361f9bd259843754 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Fri, 5 Jun 2026 18:49:51 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E6=B8=85=E7=90=86=E5=86=97?= =?UTF-8?q?=E4=BD=99=E7=A9=BA=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 空 filters/filter_labels/formula 不返回 - min_amount=0 不返回 - 返回只保留有实际值的字段 --- pricing/pricing.py | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/pricing/pricing.py b/pricing/pricing.py index 73253e6..e64abdc 100644 --- a/pricing/pricing.py +++ b/pricing/pricing.py @@ -873,16 +873,16 @@ async def get_pricing_display(ppid): 'filters': meaningful_filters, 'unit_prices': raw_tier_price }) + item = {'price_factors': price_factors_display} + min_amount = p.get('min_amount', 0) + if min_amount: + item['min_amount'] = min_amount + if filters: + item['filters'] = filters + item['filter_labels'] = filter_labels if tiered_pricing: - price_factors_display[0]['tiered'] = tiered_pricing - - items.append({ - 'filters': filters, - 'filter_labels': filter_labels, - 'price_factors': price_factors_display, - 'formula': '', - 'min_amount': p.get('min_amount', 0) - }) + item['price_factors'][0]['tiered'] = tiered_pricing + items.append(item) else: # 旧格式:formula price_factors = p.get('price_factors', None) @@ -902,12 +902,13 @@ async def get_pricing_display(ppid): 'unit_label': '' }) - items.append({ - 'filters': filters, - 'filter_labels': filter_labels, - 'price_factors': price_factors, - 'formula': p.get('formula', '') - }) + item = {'price_factors': price_factors} + if filters: + item['filters'] = filters + item['filter_labels'] = filter_labels + if p.get('formula'): + item['formula'] = p['formula'] + items.append(item) # 生成可读价格表 display_lines = [f"【{getattr(r, 'name', '')}】定价:"]