fix: 首页加载时检查日期并重置daily_count

This commit is contained in:
2026-04-10 18:29:37 +08:00
parent e5ba13980f
commit 801dd1e29b

18
app.py
View File

@@ -93,11 +93,29 @@ def index():
"""首页""" """首页"""
user = get_current_user() user = get_current_user()
if user: if user:
# 检查日期并重置计数(使用上海时区)
from datetime import timezone, timedelta
shanghai_tz = timezone(timedelta(hours=8))
today = datetime.now(shanghai_tz).date()
if user.last_translate_date != today:
user.daily_count = 0
user.last_translate_date = today
db.session.commit()
limits = USER_LIMITS.get(user.user_type, USER_LIMITS['free']) limits = USER_LIMITS.get(user.user_type, USER_LIMITS['free'])
daily_remaining = limits['daily_translations'] - user.daily_count if limits['daily_translations'] > 0 else '无限' daily_remaining = limits['daily_translations'] - user.daily_count if limits['daily_translations'] > 0 else '无限'
max_pages = limits['max_pages'] if limits['max_pages'] > 0 else '无限' max_pages = limits['max_pages'] if limits['max_pages'] > 0 else '无限'
else: else:
guest = get_or_create_guest() guest = get_or_create_guest()
# 检查日期并重置访客计数
from datetime import timezone, timedelta
shanghai_tz = timezone(timedelta(hours=8))
today = datetime.now(shanghai_tz).date()
if guest.last_translate_date != today:
guest.daily_count = 0
guest.last_translate_date = today
db.session.commit()
limits = USER_LIMITS['guest'] limits = USER_LIMITS['guest']
daily_remaining = limits['daily_translations'] - guest.daily_count daily_remaining = limits['daily_translations'] - guest.daily_count
max_pages = limits['max_pages'] max_pages = limits['max_pages']