Summary
Add two new columns to the admin users table to improve user management:
- Status column: Show if user is "Active" or "Invite sent"
- Last connection column: Display when user last logged in
Current State Analysis
Based on the current database schema:
Status Column (Can be implemented now)
- Active:
emailVerified: true
- Invite sent:
emailVerified: false
Last Connection Column (Partially possible)
- Current
Session.updatedAt field can show last session activity
- Not ideal as it represents session update, not login time
Proposed Implementation
Option 1: Use Current Schema
Implement columns using existing fields as a quick solution.
Option 2: Improve Database Schema (Recommended)
- Add
lastLoginAt: DateTime? field to User model
- Optional: Add
UserStatus enum for better status management
- Update authentication flow to track login times
Files to Modify
src/components/admin/settings/users/usersTableColumns.tsx
prisma/schema.prisma (if choosing Option 2)
- User type definitions in
src/feature/user/types/user.ts
Acceptance Criteria
Priority
Medium - Improves admin user management experience
Summary
Add two new columns to the admin users table to improve user management:
Current State Analysis
Based on the current database schema:
Status Column (Can be implemented now)
emailVerified: trueemailVerified: falseLast Connection Column (Partially possible)
Session.updatedAtfield can show last session activityProposed Implementation
Option 1: Use Current Schema
Implement columns using existing fields as a quick solution.
Option 2: Improve Database Schema (Recommended)
lastLoginAt: DateTime?field to User modelUserStatusenum for better status managementFiles to Modify
src/components/admin/settings/users/usersTableColumns.tsxprisma/schema.prisma(if choosing Option 2)src/feature/user/types/user.tsAcceptance Criteria
Priority
Medium - Improves admin user management experience