From a8400c1881a76adf0ebf488c1ccd83293be819f0 Mon Sep 17 00:00:00 2001 From: Beverly Nguyen Date: Thu, 16 Oct 2025 14:41:13 -0700 Subject: [PATCH] add enums --- app/enums.py | 6 ++++++ app/main/views/organizations.py | 16 +++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/app/enums.py b/app/enums.py index 4336375a5..2b5f2d603 100644 --- a/app/enums.py +++ b/app/enums.py @@ -106,3 +106,9 @@ class VerificationStatus(StrEnum): class AuthType(StrEnum): EMAIL_AUTH = "email_auth" SMS_AUTH = "sms_auth" + + +class ServiceStatus(StrEnum): + LIVE = "live" + TRIAL = "trial" + SUSPENDED = "suspended" diff --git a/app/main/views/organizations.py b/app/main/views/organizations.py index f067a94be..0fc8856df 100644 --- a/app/main/views/organizations.py +++ b/app/main/views/organizations.py @@ -11,6 +11,7 @@ from app import ( organizations_client, service_api_client, ) +from app.enums import ServiceStatus from app.main import main from app.main.forms import ( AdminBillingDetailsForm, @@ -35,23 +36,20 @@ from notifications_python_client.errors import HTTPError def get_service_counts_by_status(services): - """ - Calculate service counts by status. - """ def get_status(service): if not service.get("active"): - return "suspended" + return ServiceStatus.SUSPENDED elif service.get("restricted"): - return "trial" + return ServiceStatus.TRIAL else: - return "live" + return ServiceStatus.LIVE status_counts = Counter(get_status(service) for service in services) return { - "live": status_counts["live"], - "trial": status_counts["trial"], - "suspended": status_counts["suspended"], + "live": status_counts[ServiceStatus.LIVE], + "trial": status_counts[ServiceStatus.TRIAL], + "suspended": status_counts[ServiceStatus.SUSPENDED], "total": len(services), }