From aaf14264d8e21fb31a2c11aacb0380a143ed5e45 Mon Sep 17 00:00:00 2001 From: XingQue Date: Fri, 26 Jun 2026 15:16:43 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=80=83=E8=AF=95=E4=BC=9A=E5=91=98?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E4=B8=8E=E6=89=93=E6=89=8B=E4=BC=9A=E5=91=98?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jituan/services/dashou_exam.py | 6 ++++-- users/views.py | 7 +++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/jituan/services/dashou_exam.py b/jituan/services/dashou_exam.py index 22e563f..faffd5f 100644 --- a/jituan/services/dashou_exam.py +++ b/jituan/services/dashou_exam.py @@ -7,6 +7,7 @@ import uuid from django.utils import timezone from jituan.services.admin_context import build_admin_club_context + from jituan.constants import CLUB_ID_DEFAULT, DATA_SCOPE_ALL from jituan.models import ( Club, @@ -103,8 +104,9 @@ def config_to_dict(row): } -def user_has_active_member(yonghuid, club_id): - for r in Huiyuangoumai.query.filter(yonghu_id=yonghuid, club_id=club_id): +def user_has_active_member(yonghuid, club_id=None): + """是否有任意有效会员(与 /yonghu/dashouxinxi 的 clumber 逻辑一致)。""" + for r in Huiyuangoumai.query.filter(yonghu_id=yonghuid): if r.huiyuan_zhuangtai == 1 and not r.jiance_shifou_daoqi(): return True return False diff --git a/users/views.py b/users/views.py index 9163118..bd9da83 100644 --- a/users/views.py +++ b/users/views.py @@ -761,10 +761,9 @@ class DashouXinxiAPIView(APIView): ).select_related() for record in huiyuan_records: - # 检查会员是否过期 - is_expired = record.jiance_shifou_daoqi() - - # 只返回未过期的会员(huiyuan_zhuangtai = 1) + # 过期检测会同步更新 huiyuan_zhuangtai + if record.jiance_shifou_daoqi(): + continue if record.huiyuan_zhuangtai == 1: huiyuan_list.append({ 'huiyuanid': record.huiyuan_id,