diff --git a/apps/resm/tasks.py b/apps/resm/tasks.py index ea0455b..3db86b2 100644 --- a/apps/resm/tasks.py +++ b/apps/resm/tasks.py @@ -333,11 +333,13 @@ def send_download_fulltext_task(number_of_task=100): @shared_task(base=CustomTask) def release_working_paper(minutes=10): - now = datetime.now() - five_minutes_ago = datetime.now() - timedelta(minutes=minutes) - qs = Paper.objects.filter(fetch_status__isnull=False, update_time__lte= five_minutes_ago) - x = qs.update(fetch_status=None, update_time=now) - return f"release {x} papers" + qs = Paper.objects.filter(fetch_status="downloading") + count = 0 + for paper in qs: + if paper.update_time < datetime.now() - timedelta(minutes=minutes): + paper.fetch_end() + count += 1 + return f"release {count} papers" @shared_task(base=CustomTask) def download_pdf(paper_id):