[PM-38951] feat: Add CreationDate to org user detail endpoints#7936
Conversation
Surface the OrganizationUser CreationDate on the "GET org user by id" and "GET all org users" Admin Console endpoints. The column already exists on the OrganizationUser table, so this threads it through the OrganizationUserUserDetails data class, both response models, the OrganizationUserUserDetailsView (SSDT + dated migration), and the EF projections. Dapper auto-maps by column name off the view.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7936 +/- ##
==========================================
+ Coverage 61.49% 66.02% +4.52%
==========================================
Files 2249 2249
Lines 99057 99065 +8
Branches 8959 8959
==========================================
+ Hits 60917 65406 +4489
+ Misses 35989 31407 -4582
- Partials 2151 2252 +101 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
🤖 Bitwarden Claude Code ReviewOverall Assessment: REQUEST CHANGES Reviewed the threading of Code Review Details
|
eliykat
left a comment
There was a problem hiding this comment.
LGTM, however I think the Claude feedback about refreshing dependent views is correct.
🎟️ Tracking
https://bitwarden.atlassian.net/browse/PM-38951
📔 Objective
Surface the organization user's
CreationDate(when the member was first invited to the organization) on the two Admin Console read endpoints:GET /organizations/{orgId}/users— GetAll, viaOrganizationUserUserDetailsResponseModelGET /organizations/{orgId}/users/{id}— Get by id, viaOrganizationUserDetailsResponseModelThe column already exists on the
OrganizationUsertable, so no schema migration is required. This threads the field through theOrganizationUserUserDetailsdata class, both response models, theOrganizationUserUserDetailsView(SSDT view + datedCREATE OR ALTER VIEWmigration), and both EF projections. The Dapper read path auto-maps by column name off the view. The member-visible mini-details model and the public APIMemberResponseModelare intentionally left unchanged. Unit tests assertCreationDateflows into both response models.