From 41d3caa8f5fe8a06ea64bd1a6b638a272b6f3e95 Mon Sep 17 00:00:00 2001 From: Aditya Vaish Date: Thu, 16 Oct 2025 10:11:35 +0530 Subject: [PATCH] fixed data range filtering --- surfsense_backend/app/connectors/clickup_connector.py | 11 ++++++++++- surfsense_backend/app/connectors/jira_connector.py | 8 ++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/surfsense_backend/app/connectors/clickup_connector.py b/surfsense_backend/app/connectors/clickup_connector.py index b10e01e88..4d0dbe149 100644 --- a/surfsense_backend/app/connectors/clickup_connector.py +++ b/surfsense_backend/app/connectors/clickup_connector.py @@ -5,6 +5,7 @@ A module for retrieving data from ClickUp. Allows fetching tasks from workspaces and lists. """ +from datetime import datetime from typing import Any import requests @@ -168,13 +169,21 @@ class ClickUpConnector: Tuple containing (tasks list, error message or None) """ try: - # TODO : Include date range in api request + # Convert dates to Unix timestamps (milliseconds) + start_timestamp = int(datetime.strptime(start_date, "%Y-%m-%d").timestamp() * 1000) + end_timestamp = int(datetime.strptime(end_date, "%Y-%m-%d").timestamp() * 1000) params = { "page": 0, "order_by": "created", "reverse": "true", "subtasks": "true", + "include_closed": str(include_closed).lower(), + # Date filtering parameters + "date_created_gt": start_timestamp, + "date_created_lt": end_timestamp, + "date_updated_gt": start_timestamp, + "date_updated_lt": end_timestamp, } all_tasks = [] diff --git a/surfsense_backend/app/connectors/jira_connector.py b/surfsense_backend/app/connectors/jira_connector.py index ef0e00329..9ad3b11f4 100644 --- a/surfsense_backend/app/connectors/jira_connector.py +++ b/surfsense_backend/app/connectors/jira_connector.py @@ -222,11 +222,11 @@ class JiraConnector: # Build JQL query for date range # Query issues that were either created OR updated within the date range date_filter = ( - f"(createdDate >= '{start_date}' AND createdDate <= '{end_date}')" + f"(createdDate >= '{start_date}' AND createdDate <= '{end_date}') " + f"OR (updatedDate >= '{start_date}' AND updatedDate <= '{end_date}')" ) - # TODO : This JQL needs some improvement to work as expected - _jql = f"{date_filter}" + _jql = f"{date_filter} ORDER BY created DESC" if project_key: _jql = ( f'project = "{project_key}" AND {date_filter} ORDER BY created DESC' @@ -250,7 +250,7 @@ class JiraConnector: fields.append("comment") params = { - # "jql": "", TODO : Add a JQL query to filter from a date range + "jql": _jql, "fields": ",".join(fields), "maxResults": 100, "startAt": 0,