Fix linting

This commit is contained in:
Erin Song 2025-01-23 11:48:07 -08:00
parent 607336406f
commit 0522138cc4
No known key found for this signature in database
2 changed files with 16 additions and 6 deletions

View file

@ -959,11 +959,12 @@ class DomainRequest(TimeStampedModel):
context["custom_email_content"] = custom_email_content
if self.requesting_entity_is_portfolio() or self.requesting_entity_is_suborganization():
portfolio_view_requests_users = self.portfolio.portfolio_users_with_permissions(
permissions=[UserPortfolioPermissionChoices.VIEW_ALL_REQUESTS]
portfolio_view_requests_users = self.portfolio.portfolio_users_with_permissions( # type: ignore
permissions=[UserPortfolioPermissionChoices.VIEW_ALL_REQUESTS],
include_admin=True
)
cc_users = self.portfolio.portfolio_admin_users | portfolio_view_requests_users
cc_addresses = list(cc_users.values_list("email", flat=True))
cc_addresses = list(portfolio_view_requests_users.values_list("email", flat=True))
print("cc addresses: ", cc_addresses)
send_templated_email(
email_template,

View file

@ -4,6 +4,7 @@ from registrar.models.domain_request import DomainRequest
from registrar.models.federal_agency import FederalAgency
from registrar.models.user import User
from registrar.models.utility.portfolio_helper import UserPortfolioRoleChoices
from django.db.models import Q
from .utility.time_stamped_model import TimeStampedModel
@ -144,11 +145,19 @@ class Portfolio(TimeStampedModel):
).values_list("user__id", flat=True)
return User.objects.filter(id__in=admin_ids)
def portfolio_users_with_permissions(self, permissions=[]):
def portfolio_users_with_permissions(self, permissions=[], include_admin=False):
"""Gets all users with specified additional permissions for this particular portfolio.
Returns a queryset of User."""
portfolio_users = self.portfolio_users
if permissions:
if include_admin:
portfolio_users = portfolio_users.filter(
Q(additional_permissions__overlap=permissions) |
Q(roles__overlap=[
UserPortfolioRoleChoices.ORGANIZATION_ADMIN,
]),
)
else:
portfolio_users = portfolio_users.filter(additional_permissions__overlap=permissions)
user_ids = portfolio_users.values_list("user__id", flat=True)
return User.objects.filter(id__in=user_ids)