From ea3d67c496f78155fd5c0d44aa4a2b4766b13dd2 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Tue, 7 Jul 2026 15:17:25 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20filters=20dict=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=E4=B8=A4=E5=A4=84=E9=83=BD=E5=85=BC=E5=AE=B9=EF=BC=8C=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E7=AC=AC=E4=BA=8C=E5=A4=84iter=20string=E6=8A=A5?= =?UTF-8?q?=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pricing/pricing.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pricing/pricing.py b/pricing/pricing.py index b376c42..fa649ef 100644 --- a/pricing/pricing.py +++ b/pricing/pricing.py @@ -673,7 +673,14 @@ order by b.enabled_date desc""" # 处理 filters 中的区间定价(查找匹配的 unit_prices) if 'filters' in p: - for filter_item in p['filters']: + raw_filters2 = p['filters'] + if isinstance(raw_filters2, dict): + filter_items2 = [raw_filters2] + else: + filter_items2 = raw_filters2 + for filter_item in filter_items2: + if not isinstance(filter_item, dict): + continue item_value_mode = filter_item.get('value_mode') for fk, fv in filter_item.items(): if fk in ('unit_prices', 'value_mode'):