Skip to content

FAC-135.1 feat: admin non-submitters lookup endpoint #351

Description

@y4nder

Summary

Admin-only endpoint to locate students who have not submitted any questionnaire in a scope semester. Internal tool for quickly chasing down non-responders.

Scope

  • GET /admin/users/without-submissions — paginated, SUPER_ADMIN-guarded
  • Filters: search, semesterId, facultyUsername, courseId, page, limit
  • Scope defaults to latest semester (resolved by createdAt DESC, matching analytics.service.ts convention)
  • When facultyUsername + courseId are both provided, the submission-match tuple is narrowed accordingly — so "no submissions" means no submissions for that specific (faculty, course, semester)
  • Response envelope includes resolved scope (semesterId, code, label, academicYear) alongside the standard paginated payload

Out of scope

  • CSV/export (display-only by design)
  • NOT EXISTS subquery refactor — current in-memory set-difference matches existing pattern in admin-filters.service.ts and is acceptable at today's scale; revisit if this page gets slow

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions