Merge branch 'ms/3316-automatically-add-portfolio-members' of https://github.com/cisagov/manage.get.gov into ms/3316-automatically-add-portfolio-members

This commit is contained in:
matthewswspence 2025-02-06 12:41:10 -06:00
commit 4d62bc13fb
No known key found for this signature in database
GPG key ID: FB458202A7852BA4

View file

@ -201,19 +201,18 @@ class Command(BaseCommand):
domain_managers: set[int] = set()
# Fetch all users with manager roles for the domains
managers = UserDomainRole.objects.filter(domain__in=domains, role=UserDomainRole.Roles.MANAGER).values_list(
"user", flat=True
)
# select_related means that a db query will not be occur when you do user_domain_role.user
# Its similar to a set or dict in that it costs slightly more upfront in exchange for perf later
user_domain_roles = UserDomainRole.objects.select_related("user").filter(domain__in=domains, role=UserDomainRole.Roles.MANAGER)
domain_managers.update(managers)
invited_managers: set[str] = set()
# Get the emails of invited managers
for domain in domains:
domain_invitations = DomainInvitation.objects.filter(
domain=domain, status=DomainInvitation.DomainInvitationStatus.INVITED
).values_list("email", flat=True)
invited_managers.update(domain_invitations)
domain_invitations = DomainInvitation.objects.filter(
domain__in=domains, status=DomainInvitation.DomainInvitationStatus.INVITED
).values_list("email", flat=True)
invited_managers.update(domain_invitations)
for id in domain_managers:
try: