mirror of
https://github.com/GSA/notifications-api.git
synced 2026-01-30 06:21:50 -05:00
Simplify _filter_query() function
This commit is contained in:
@@ -296,15 +296,20 @@ def get_notifications_for_service(
|
||||
|
||||
def _filter_query(query, filter_dict=None):
|
||||
if filter_dict is None:
|
||||
filter_dict = MultiDict()
|
||||
else:
|
||||
filter_dict = MultiDict(filter_dict)
|
||||
statuses = filter_dict.getlist('status') if 'status' in filter_dict else None
|
||||
return query
|
||||
|
||||
multidict = MultiDict(filter_dict)
|
||||
|
||||
# filter by status
|
||||
statuses = multidict.getlist('status')
|
||||
if statuses:
|
||||
query = query.filter(Notification.status.in_(statuses))
|
||||
template_types = filter_dict.getlist('template_type') if 'template_type' in filter_dict else None
|
||||
|
||||
# filter by template
|
||||
template_types = multidict.getlist('template_type')
|
||||
if template_types:
|
||||
query = query.join(Template).filter(Template.template_type.in_(template_types))
|
||||
|
||||
return query
|
||||
|
||||
|
||||
|
||||
@@ -170,8 +170,8 @@ def get_notification_by_id(notification_id):
|
||||
def get_all_notifications():
|
||||
data = notifications_filter_schema.load(request.args).data
|
||||
include_jobs = data.get('include_jobs', False)
|
||||
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')
|
||||
page = data.get('page', 1)
|
||||
page_size = data.get('page_size', current_app.config.get('PAGE_SIZE'))
|
||||
limit_days = data.get('limit_days')
|
||||
|
||||
pagination = notifications_dao.get_notifications_for_service(
|
||||
|
||||
Reference in New Issue
Block a user