mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-20 14:29:51 -04:00
time_left considers flexible data retention periods
Also update tests
This commit is contained in:
@@ -399,6 +399,9 @@ def get_job_partials(job, template):
|
||||
counts=_get_job_counts(job),
|
||||
status=filter_args['status']
|
||||
)
|
||||
service_data_retention_days = service_api_client.get_service_data_retention_by_notification_type(
|
||||
current_service.id, template['template_type']
|
||||
).get('days_of_retention', current_app.config['ACTIVITY_STATS_LIMIT_DAYS'])
|
||||
|
||||
return {
|
||||
'counts': counts,
|
||||
@@ -415,7 +418,7 @@ def get_job_partials(job, template):
|
||||
job_id=job['id'],
|
||||
status=request.args.get('status')
|
||||
),
|
||||
time_left=get_time_left(job['created_at']),
|
||||
time_left=get_time_left(job['created_at'], service_data_retention_days=service_data_retention_days),
|
||||
job=job,
|
||||
template=template,
|
||||
template_version=job['template_version'],
|
||||
|
||||
@@ -338,12 +338,14 @@ def get_current_financial_year():
|
||||
return current_year if current_month > 3 else current_year - 1
|
||||
|
||||
|
||||
def get_time_left(created_at):
|
||||
def get_time_left(created_at, service_data_retention_days=7):
|
||||
return ago.human(
|
||||
(
|
||||
datetime.now(timezone.utc).replace(hour=23, minute=59, second=59)
|
||||
datetime.now(timezone.utc)
|
||||
) - (
|
||||
dateutil.parser.parse(created_at) + timedelta(days=8)
|
||||
dateutil.parser.parse(created_at).replace(hour=0, minute=0, second=0) + timedelta(
|
||||
days=service_data_retention_days + 1
|
||||
)
|
||||
),
|
||||
future_tense='Data available for {}',
|
||||
past_tense='Data no longer available', # No-one should ever see this
|
||||
|
||||
Reference in New Issue
Block a user