Skip to content

Create a query to fetch lab-wide aggregate data #149

@hrideshmg

Description

@hrideshmg

Currently two root query objects exist in the GraphQL schema - allMembers and members, each of these are used to fetch details regarding members individually.

To support dashboard-level analytics and visualizations, we need to introduce a new root query object, lab, dedicated to aggregate and statistical data.

Goal

Add a new lab query field in the GraphQL schema to provide aggregate insights, starting with daily attendance counts within a specified date range.

This will enable rendering of the attendance trend graph on the Home page (as shown below):

Attendance Graph

Deliverables

  • Introduce a new root-level lab query object.
  • Within lab, implement an attendance(startDate, endDate) resolver.
  • The resolver should return a list of objects containing:

date: Date! — the date of attendance.
totalPresent: Int! — the total number of present members for that date.

Expected Schema would look something like this:

query {
    lab {
        attendance(startDate: "1999-01-01", endDate: "1999-12-31") {
            date,
            totalPresent
        }
    }
}

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions