admin自动审核
All checks were successful
Deploy to Server / deploy (push) Successful in 25s

This commit is contained in:
jeremygan2021
2026-02-23 16:54:12 +08:00
parent 2b2f586894
commit ea500391e8

View File

@@ -511,17 +511,38 @@ def payment_finish(request):
# Handle Activity Signup # Handle Activity Signup
if hasattr(order, 'activity') and order.activity: if hasattr(order, 'activity') and order.activity:
try: try:
# Use string import to avoid circular dependency at module level # Use apps.get_model to avoid circular dependency
from community.models import ActivitySignup from django.apps import apps
ActivitySignup = apps.get_model('community', 'ActivitySignup')
signup = ActivitySignup.objects.filter(order=order).first() signup = ActivitySignup.objects.filter(order=order).first()
# Fallback: try to find by user and activity if not found by order
if not signup and order.wechat_user:
print(f"Warning: ActivitySignup not found by order {order.id}, trying by user/activity")
signup = ActivitySignup.objects.filter(
user=order.wechat_user,
activity=order.activity,
status='unpaid'
).first()
if signup:
print(f"Found signup {signup.id} by user/activity, linking order...")
signup.order = order
signup.save()
if signup: if signup:
# Determine status based on activity setting # Determine status based on activity setting
new_status = 'confirmed' if signup.activity.auto_confirm else 'pending' new_status = 'confirmed' if signup.activity.auto_confirm else 'pending'
signup.status = new_status signup.status = new_status
signup.save() signup.save()
print(f"活动报名状态已更新: {signup.id} -> {new_status}") print(f"活动报名状态已更新: {signup.id} -> {new_status}")
else:
print(f"Error: No ActivitySignup found for paid order {order.id}")
except Exception as e: except Exception as e:
print(f"更新活动报名状态失败: {str(e)}") print(f"更新活动报名状态失败: {str(e)}")
import traceback
traceback.print_exc()
# 计算佣金 (旧版销售员系统) # 计算佣金 (旧版销售员系统)
try: try: