feat(家庭事项): 过滤已截止的事项,不显示截止日期早于今天的事项

This commit is contained in:
2026-03-09 10:56:50 +08:00
parent ec21ff68e3
commit f4d7dfd8d0

View File

@@ -1,7 +1,7 @@
from django.shortcuts import render, redirect, get_object_or_404 from django.shortcuts import render, redirect, get_object_or_404
from django.http import HttpResponse, JsonResponse from django.http import HttpResponse, JsonResponse
from django.utils import timezone from django.utils import timezone
from django.db.models import Count from django.db.models import Count, Q
from django.core.mail import send_mail, EmailMessage from django.core.mail import send_mail, EmailMessage
from django.conf import settings from django.conf import settings
from django.views.decorators.csrf import csrf_exempt from django.views.decorators.csrf import csrf_exempt
@@ -74,8 +74,10 @@ def index(request):
today_plan = TodayPlan.objects.filter(date=today) today_plan = TodayPlan.objects.filter(date=today)
# 获取未完成的家庭事项(排除已完成状态) # 获取未完成的家庭事项(排除已完成状态和已截止的事项
pending_family_tasks = FamilyTask.objects.exclude(status__name='completed') pending_family_tasks = FamilyTask.objects.exclude(status__name='completed')
# 过滤掉截止日期早于今天的事项(如果设置了截止日期)
pending_family_tasks = pending_family_tasks.filter(Q(deadline__gte=today) | Q(deadline__isnull=True))
context = { context = {
'yesterday': yesterday, 'yesterday': yesterday,
@@ -397,10 +399,12 @@ def delete_summary(request, pk):
# 家庭事项视图 # 家庭事项视图
@login_required @login_required
def family_tasks(request): def family_tasks(request):
"""家庭事项 - 显示所有未完成的事项非completed状态""" """家庭事项 - 显示所有未完成的事项非completed状态且未截止"""
logger.info("用户访问家庭事项页面") logger.info("用户访问家庭事项页面")
# 排除已完成的事项,显示所有未完成的事项 today = timezone.now().date()
# 排除已完成的事项和已截止的事项
tasks = FamilyTask.objects.exclude(status__name='completed') tasks = FamilyTask.objects.exclude(status__name='completed')
tasks = tasks.filter(Q(deadline__gte=today) | Q(deadline__isnull=True))
context = { context = {
'tasks': tasks, 'tasks': tasks,