Added API methods for connecting tasks to Home page dials. Connected 'view' buttons to tasks page.

This commit is contained in:
rocketdebris 2026-01-19 21:47:04 -05:00
parent 1429f68b9e
commit 98ec082394
3 changed files with 80 additions and 18 deletions

View file

@ -42,6 +42,40 @@ def get_task_status_options():
return build_error_response(str(e), 500)
@frappe.whitelist()
def get_tasks_due(subject_filter):
"""Return the number of items due today of the type of subject_filter"""
try:
filters = {
'subject': ['like', f'%{subject_filter}%'],
'status': ['not in', ["Template", "Completed", "Cancelled"]]
}
count = frappe.db.count("Task", filters=filters)
return build_success_response(count)
except frappe.ValidationError as ve:
return build_error_response(str(ve), 400)
except Exception as e:
return build_error_response(str(e), 500)
@frappe.whitelist()
def get_tasks_completed(subject_filter):
"""Return the number of items due today marked complete of the type of subject_filter"""
try:
filters = {
'subject': ['like', f'%{subject_filter}%'],
'status': ['not in', ["Template", "Cancelled"]]
}
print("Completed Task filter", filters)
count = frappe.db.count("Task", filters=filters)
print("Matching Records:", count)
return build_success_response(count)
except frappe.ValidationError as ve:
return build_error_response(str(ve), 400)
except Exception as e:
return build_error_response(str(e), 500)
@frappe.whitelist()
def get_tasks_table_data(filters={}, sortings=[], page=1, page_size=10):
"""Get paginated task table data with filtering and sorting support."""