Expose POST /admin/roles/:role/bulk-deactivate and bulk-reactivate for platform users and team_members, mirroring deactivate/reactivate semantics and optional team member exclusions. Co-authored-by: Cursor <cursoragent@cursor.com>
28 lines
1.2 KiB
Go
28 lines
1.2 KiB
Go
package domain
|
|
|
|
// BulkAccountsByRoleRequest is optional JSON for POST /admin/roles/:role/bulk-{deactivate,reactivate}.
|
|
// Optional exclusions apply to team_members bulk updates only.
|
|
type BulkAccountsByRoleRequest struct {
|
|
ExcludeTeamMemberID *int64 `json:"exclude_team_member_id,omitempty"`
|
|
}
|
|
|
|
// BulkDeactivateAccountsByRoleRequest aliases the shared shape (backward compatible name for Swagger).
|
|
type BulkDeactivateAccountsByRoleRequest = BulkAccountsByRoleRequest
|
|
|
|
// BulkReactivateAccountsByRoleRequest aliases the shared shape.
|
|
type BulkReactivateAccountsByRoleRequest = BulkAccountsByRoleRequest
|
|
|
|
// BulkDeactivateAccountsByRoleResult reports how many rows were updated per table.
|
|
type BulkDeactivateAccountsByRoleResult struct {
|
|
Role string `json:"role"`
|
|
UsersDeactivated int64 `json:"users_deactivated"`
|
|
TeamMembersDeactivated int64 `json:"team_members_deactivated"`
|
|
}
|
|
|
|
// BulkReactivateAccountsByRoleResult reports how many rows were reactivated per table.
|
|
type BulkReactivateAccountsByRoleResult struct {
|
|
Role string `json:"role"`
|
|
UsersReactivated int64 `json:"users_reactivated"`
|
|
TeamMembersReactivated int64 `json:"team_members_reactivated"`
|
|
}
|