Cleaning up a lot of things, getting Enums used everywhere.

Signed-off-by: Cliff Hill <Clifford.hill@gsa.gov>
This commit is contained in:
Cliff Hill
2024-02-28 12:40:52 -05:00
parent 0368307802
commit 820ee5a942
30 changed files with 209 additions and 180 deletions

View File

@@ -25,14 +25,14 @@ from app.dao.notifications_dao import (
from app.dao.service_data_retention_dao import (
fetch_service_data_retention_for_all_services_by_notification_type,
)
from app.models import EMAIL_TYPE, SMS_TYPE, FactProcessingTime
from app.models import NotificationType, FactProcessingTime
from app.utils import get_midnight_in_utc
@notify_celery.task(name="remove_sms_email_jobs")
@cronitor("remove_sms_email_jobs")
def remove_sms_email_csv_files():
_remove_csv_files([EMAIL_TYPE, SMS_TYPE])
_remove_csv_files([NotificationType.EMAIL, NotificationType.SMS])
def _remove_csv_files(job_types):

View File

@@ -8,7 +8,7 @@ from app.cronitor import cronitor
from app.dao.fact_billing_dao import fetch_billing_data_for_day, update_fact_billing
from app.dao.fact_notification_status_dao import update_fact_notification_status
from app.dao.notifications_dao import get_service_ids_with_notifications_on_date
from app.models import EMAIL_TYPE, SMS_TYPE
from app.models import NotificationType
@notify_celery.task(name="create-nightly-billing")
@@ -80,7 +80,7 @@ def create_nightly_notification_status():
yesterday = datetime.utcnow().date() - timedelta(days=1)
for notification_type in [SMS_TYPE, EMAIL_TYPE]:
for notification_type in (NotificationType.SMS, NotificationType.EMAIL):
days = 4
for i in range(days):

View File

@@ -6,7 +6,7 @@ from requests import HTTPError, request
from app.celery.process_ses_receipts_tasks import process_ses_results
from app.config import QueueNames
from app.dao.notifications_dao import get_notification_by_id
from app.models import SMS_TYPE
from app.models import NotificationType
temp_fail = "2028675303"
perm_fail = "2028675302"
@@ -21,7 +21,7 @@ def send_sms_response(provider, reference):
body = sns_callback(reference)
headers = {"Content-type": "application/json"}
make_request(SMS_TYPE, provider, body, headers)
make_request(NotificationType.SMS, provider, body, headers)
def send_email_response(reference, to):

View File

@@ -35,11 +35,10 @@ from app.dao.services_dao import (
from app.dao.users_dao import delete_codes_older_created_more_than_a_day_ago
from app.delivery.send_to_providers import provider_to_use
from app.models import (
EMAIL_TYPE,
JOB_STATUS_ERROR,
JOB_STATUS_IN_PROGRESS,
JOB_STATUS_PENDING,
SMS_TYPE,
NotificationType,
Job,
)
from app.notifications.process_notifications import send_notification_to_queue
@@ -160,7 +159,7 @@ def check_db_notification_fails():
)
# suppress any spam coming from development tier
if message and curr_env != "development":
provider = provider_to_use(EMAIL_TYPE, False)
provider = provider_to_use(NotificationType.EMAIL, False)
from_address = '"{}" <{}@{}>'.format(
"Failed Notification Count Alert",
"test_sender",
@@ -224,7 +223,7 @@ def check_job_status():
def replay_created_notifications():
# if the notification has not be send after 1 hour, then try to resend.
resend_created_notifications_older_than = 60 * 60
for notification_type in (EMAIL_TYPE, SMS_TYPE):
for notification_type in (NotificationType.EMAIL, NotificationType.SMS):
notifications_to_resend = notifications_not_yet_sent(
resend_created_notifications_older_than, notification_type
)

View File

@@ -21,13 +21,12 @@ from app.dao.service_inbound_api_dao import get_service_inbound_api_for_service
from app.dao.service_sms_sender_dao import dao_get_service_sms_senders_by_id
from app.dao.templates_dao import dao_get_template_by_id
from app.models import (
EMAIL_TYPE,
JOB_STATUS_CANCELLED,
JOB_STATUS_FINISHED,
JOB_STATUS_IN_PROGRESS,
JOB_STATUS_PENDING,
KEY_TYPE_NORMAL,
SMS_TYPE,
NotificationType,
)
from app.notifications.process_notifications import persist_notification
from app.notifications.validators import check_service_over_total_message_limit
@@ -129,7 +128,7 @@ def process_row(row, template, job, service, sender_id=None):
}
)
send_fns = {SMS_TYPE: save_sms, EMAIL_TYPE: save_email}
send_fns = {NotificationType.SMS: save_sms, NotificationType.EMAIL: save_email}
send_fn = send_fns[template_type]
@@ -205,7 +204,7 @@ def save_sms(self, service_id, notification_id, encrypted_notification, sender_i
recipient=notification["to"],
service=service,
personalisation=notification.get("personalisation"),
notification_type=SMS_TYPE,
notification_type=NotificationType.SMS,
api_key_id=None,
key_type=KEY_TYPE_NORMAL,
created_at=datetime.utcnow(),
@@ -265,7 +264,7 @@ def save_email(
recipient=notification["to"],
service=service,
personalisation=notification.get("personalisation"),
notification_type=EMAIL_TYPE,
notification_type=NotificationType.EMAIL,
api_key_id=None,
key_type=KEY_TYPE_NORMAL,
created_at=datetime.utcnow(),
@@ -307,12 +306,12 @@ def save_api_email_or_sms(self, encrypted_notification):
service = SerialisedService.from_id(notification["service_id"])
q = (
QueueNames.SEND_EMAIL
if notification["notification_type"] == EMAIL_TYPE
if notification["notification_type"] == NotificationType.EMAIL
else QueueNames.SEND_SMS
)
provider_task = (
provider_tasks.deliver_email
if notification["notification_type"] == EMAIL_TYPE
if notification["notification_type"] == NotificationType.EMAIL
else provider_tasks.deliver_sms
)
try:

View File

@@ -6,7 +6,7 @@ from requests import HTTPError, request
from app.celery.process_ses_receipts_tasks import process_ses_results
from app.config import QueueNames
from app.dao.notifications_dao import get_notification_by_id
from app.models import SMS_TYPE
from app.models import NotificationType
temp_fail = "2028675303"
perm_fail = "2028675302"
@@ -21,7 +21,7 @@ def send_sms_response(provider, reference):
body = sns_callback(reference)
headers = {"Content-type": "application/json"}
make_request(SMS_TYPE, provider, body, headers)
make_request(NotificationType.SMS, provider, body, headers)
def send_email_response(reference, to):