diff --git a/jituan/services/member_recharge.py b/jituan/services/member_recharge.py index 796c4ea..5d7b3e0 100644 --- a/jituan/services/member_recharge.py +++ b/jituan/services/member_recharge.py @@ -1119,7 +1119,15 @@ def dashou_in_active_trial_period(yonghuid): """打手是否处于未过期的体验会员期(禁止佣金提现;与抢单池展示逻辑无关)。""" from jituan.services.huiyuan_bundle import huiyuan_ids_match - now = timezone.now() + def _cmp_dt(dt): + """统一成可比较的 datetime,避免 naive/aware 混比。""" + if dt is None: + return None + if timezone.is_naive(dt): + return timezone.make_aware(dt, timezone.get_current_timezone()) + return dt + + now = _cmp_dt(timezone.now()) for rec in Huiyuangoumai.query.filter(yonghu_id=yonghuid): if rec.jiance_shifou_daoqi(): continue @@ -1156,9 +1164,7 @@ def dashou_in_active_trial_period(yonghuid): if days <= 0: _, _, days = club_huiyuan_sellable(cid, hid, is_trial=True) days = max(days, 1) - start = order.CreateTime or now - if timezone.is_naive(start): - start = timezone.make_aware(start, timezone.get_current_timezone()) + start = _cmp_dt(order.CreateTime) or now if start + timedelta(days=days) > now: return True return False