Recovered state: integrated TrendSurferAgent, restored frontend/backend files, and cleaned up recovery scripts
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
from typing import List
|
||||
from datetime import datetime
|
||||
from sqlalchemy.orm import Session
|
||||
from sqlalchemy import or_
|
||||
|
||||
from models.website_analysis_monitoring_models import DeepWebsiteCrawlTask
|
||||
|
||||
def load_due_deep_website_crawl_tasks(db: Session, user_id: str = None) -> List[DeepWebsiteCrawlTask]:
|
||||
"""
|
||||
Load due deep website crawl tasks.
|
||||
|
||||
Args:
|
||||
db: Database session
|
||||
user_id: Optional user_id to filter tasks
|
||||
|
||||
Returns:
|
||||
List of due tasks
|
||||
"""
|
||||
query = db.query(DeepWebsiteCrawlTask).filter(
|
||||
or_(
|
||||
DeepWebsiteCrawlTask.status == 'active',
|
||||
DeepWebsiteCrawlTask.status == 'retry'
|
||||
),
|
||||
or_(
|
||||
DeepWebsiteCrawlTask.next_execution <= datetime.utcnow(),
|
||||
DeepWebsiteCrawlTask.next_execution == None
|
||||
)
|
||||
)
|
||||
|
||||
if user_id:
|
||||
query = query.filter(DeepWebsiteCrawlTask.user_id == user_id)
|
||||
|
||||
return query.all()
|
||||
Reference in New Issue
Block a user