mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-24 01:11:38 -05:00
Make get all notications return in csv format too:
* This adds functionality (via an extra req param) to the * existing get all notifications method allowing us to specify * when we want the API to return in csv/non-csv format
This commit is contained in:
@@ -69,7 +69,6 @@ def get_all_notifications_for_service_job(service_id, job_id):
|
||||
data = notifications_filter_schema.load(request.args).data
|
||||
page = data['page'] if 'page' in data else 1
|
||||
page_size = data['page_size'] if 'page_size' in data else current_app.config.get('PAGE_SIZE')
|
||||
|
||||
pagination = get_notifications_for_job(
|
||||
service_id,
|
||||
job_id,
|
||||
@@ -78,18 +77,17 @@ def get_all_notifications_for_service_job(service_id, job_id):
|
||||
page_size=page_size)
|
||||
|
||||
kwargs = request.args.to_dict()
|
||||
|
||||
if page_size > 50:
|
||||
current_app.logger.info('Current page: {}'.format(page))
|
||||
current_app.logger.info('Page size: {}'.format(page_size))
|
||||
current_app.logger.info('Total pages in pagination: {}'.format(pagination.pages))
|
||||
current_app.logger.info('Total notifications in pagination query: {}'.format(pagination.total))
|
||||
current_app.logger.info('Arguments for next query: {}'.format(kwargs))
|
||||
|
||||
kwargs['service_id'] = service_id
|
||||
kwargs['job_id'] = job_id
|
||||
|
||||
notifications = None
|
||||
if data.get('format_for_csv'):
|
||||
notifications = [notification.serialize_for_csv() for notification in pagination.items]
|
||||
else:
|
||||
notifications = notification_with_template_schema.dump(pagination.items, many=True).data
|
||||
|
||||
return jsonify(
|
||||
notifications=notification_with_template_schema.dump(pagination.items, many=True).data,
|
||||
notifications=notifications,
|
||||
page_size=page_size,
|
||||
total=pagination.total,
|
||||
links=pagination_links(
|
||||
|
||||
Reference in New Issue
Block a user