Skip to content

feat(reports): add Finished Tasks report with per-task hours and filters#33

Merged
evilguy4000 merged 1 commit intodevelopfrom
feat-MissingReport
Sep 3, 2025
Merged

feat(reports): add Finished Tasks report with per-task hours and filters#33
evilguy4000 merged 1 commit intodevelopfrom
feat-MissingReport

Conversation

@evilguy4000
Copy link
Copy Markdown
Collaborator

  • New route: GET /reports/tasks
    • Lists tasks with status "done" completed within the selected date range
    • Filters: project_id, user_id, start_date, end_date (defaults to last 30 days)
    • Aggregates hours per task from matching TimeEntry records
    • Shows assignee, completion date, total hours, and entry count per task
  • UI: new template templates/reports/task_report.html with filters, summary cards, and results table
  • Navigation: add “Finished Tasks Report” link under Project Reports on templates/reports/index.html
  • Consistent styling and behavior with existing project/user reports
  • No schema changes; login required

- New route: GET /reports/tasks
  - Lists tasks with status "done" completed within the selected date range
  - Filters: project_id, user_id, start_date, end_date (defaults to last 30 days)
  - Aggregates hours per task from matching TimeEntry records
  - Shows assignee, completion date, total hours, and entry count per task
- UI: new template templates/reports/task_report.html with filters, summary cards, and results table
- Navigation: add “Finished Tasks Report” link under Project Reports on templates/reports/index.html
- Consistent styling and behavior with existing project/user reports
- No schema changes; login required
@evilguy4000 evilguy4000 merged commit 1d29393 into develop Sep 3, 2025
@evilguy4000 evilguy4000 deleted the feat-MissingReport branch September 19, 2025 06:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant