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