From 1e0081862db79155b8ce022abf46230a50117122 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Tue, 14 Jul 2026 10:45:07 +0800 Subject: [PATCH] fix: use empty string instead of None for NOT NULL sale_id/promo_code_id --- discount/init.py | 4 ++-- wwwroot/api/init_free_customers.dspy | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/discount/init.py b/discount/init.py index da99a04..1ef9399 100644 --- a/discount/init.py +++ b/discount/init.py @@ -1093,7 +1093,7 @@ async def save_customer_sale(request, params_kw): # Update existing binding await sor.U('discount_customer_bind', { 'id': bind_id, - 'sale_id': sale_id or None, + 'sale_id': sale_id or '', }) else: # Create new binding for free customer @@ -1102,7 +1102,7 @@ async def save_customer_sale(request, params_kw): 'id': new_id, 'customerid': customerid, 'resellerid': userorgid, - 'sale_id': sale_id or None, + 'sale_id': sale_id or '', 'promo_code_id': None, 'bind_type': '2', # manual assignment }) diff --git a/wwwroot/api/init_free_customers.dspy b/wwwroot/api/init_free_customers.dspy index 6290edf..07c10c8 100644 --- a/wwwroot/api/init_free_customers.dspy +++ b/wwwroot/api/init_free_customers.dspy @@ -28,9 +28,9 @@ async with DBPools().sqlorContext('sage') as sor: await disc_sor.C('discount_customer_bind', { 'id': getID(), 'customerid': u.id, - 'resellerid': userorgid, - 'sale_id': None, - 'promo_code_id': None, + 'resellerid': u.orgid or '0', + 'sale_id': '', + 'promo_code_id': '', 'bind_type': '3', }) count += 1