update pay ui

This commit is contained in:
2025-12-12 14:59:43 +08:00
parent e24e0604b8
commit c4e95e9c1e

View File

@@ -6353,24 +6353,42 @@ def api_membership_status():
try:
user = request.user
# TODO: 根据实际业务逻辑判断会员状态
# 这里假设用户表中有会员相关字段
is_member = getattr(user, 'is_member', False)
member_expire_date = getattr(user, 'member_expire_date', None)
# 获取用户订阅信息
subscription = get_user_subscription_safe(user.id)
subscription_type = subscription.subscription_type # free/pro/max
is_active = subscription.is_active()
# is_member: pro或max且未过期为True兼容旧逻辑
is_member = is_active and subscription_type in ('pro', 'max')
# 手机绑定状态
phone_bindcd = bool(user.phone and user.phone_confirmed)
return jsonify({
'code': 200,
'message': 'success',
'data': {
'user_id': user.id,
'is_member': is_member,
'member_expire_date': member_expire_date.isoformat() if member_expire_date else None,
# 会员信息
'subscription_type': subscription_type, # free/pro/max
'subscription_status': subscription.subscription_status, # active/expired/cancelled
'is_member': is_member, # 兼容旧逻辑
'is_active': is_active,
'start_date': subscription.start_date.isoformat() if subscription.start_date else None,
'end_date': subscription.end_date.isoformat() if subscription.end_date else None,
'days_left': subscription.days_left(),
'auto_renewal': subscription.auto_renewal,
# 手机绑定状态
'phone_bindcd': phone_bindcd,
'phone': user.phone if phone_bindcd else None,
# 兼容旧字段
'user_level': user.user_level,
'benefits': {
'unlimited_access': is_member,
'priority_support': is_member,
'priority_support': subscription_type == 'max',
'advanced_analytics': is_member,
'custom_alerts': is_member
'custom_alerts': is_member,
'max_exclusive': subscription_type == 'max' # max专属功能
}
}
})