feat: Batch Analytics of the user by Admin

Summary

Implement an admin-only CLI command to process a CSV file containing user IDs and generate an analytics report CSV for all users.

The report should include:

  • Audio uploads
  • Video uploads
  • Document uploads
  • Text contributions
  • Image uploads
  • Total contributions
  • User streak
  • Hours spent

Features

  • Admin-only access
  • Read user IDs from CSV
  • Generate analytics per user
  • Export analytics into CSV
  • Handle invalid/missing users gracefully
  • Ignore empty rows
  • Support large batch processing

Acceptance Criteria

  • CLI accepts valid CSV input
  • Output CSV is generated successfully
  • Analytics are calculated correctly
  • Invalid users are marked with status
  • Duplicate user IDs are handled properly
  • Command works for large CSV files

Test Cases

  • Valid CSV generates correct report
  • Empty CSV handled properly
  • Invalid user IDs marked correctly
  • Duplicate users do not break processing
  • Large CSV processing works efficiently