diff --git a/smash/web/api_views/visit.py b/smash/web/api_views/visit.py index e6fbe9693dc121643817b92a73d93463ff038716..59f0eb977ae48eca6fee42d9231f2dee8de4097c 100644 --- a/smash/web/api_views/visit.py +++ b/smash/web/api_views/visit.py @@ -36,8 +36,8 @@ def get_visit_columns(request, visit_list_type): result = [] add_column(result, "First name", "first_name", visit_subject_columns, "string_filter") add_column(result, "Last name", "last_name", visit_subject_columns, "string_filter") - add_column(result, "Location", "default_location", visit_subject_study_columns, "location_filter", - study.columns) + add_column(result, "ND number", "nd_number", visit_subject_study_columns, "string_filter", study.columns) + add_column(result, "Location", "default_location", visit_subject_study_columns, "location_filter", study.columns) add_column(result, "Flying team location", "flying_team", visit_subject_study_columns, "flying_team_filter", study.columns) add_column(result, "Visit begins", "datetime_begin", visit_columns, None) @@ -86,6 +86,8 @@ def get_visits_order(visits_to_be_ordered, order_column, order_direction): result = visits_to_be_ordered.order_by(order_direction + 'subject__subject__first_name') elif order_column == "last_name": result = visits_to_be_ordered.order_by(order_direction + 'subject__subject__last_name') + elif order_column == "nd_number": + result = visits_to_be_ordered.order_by(order_direction + 'subject__nd_number') elif order_column == "default_location": result = visits_to_be_ordered.order_by(order_direction + 'subject__default_location') elif order_column == "flying_team": @@ -139,6 +141,8 @@ def get_visits_filtered(visits_to_be_filtered, filters): result = result.filter(subject__subject__first_name__icontains=value) elif column == "last_name": result = result.filter(subject__subject__last_name__icontains=value) + elif column == "nd_number": + result = result.filter(subject__nd_number__icontains=value) elif column == "flying_team": result = result.filter(subject__flying_team=value) elif column == "default_location": @@ -227,6 +231,7 @@ def serialize_visit(visit): result = { "first_name": visit.subject.subject.first_name, "last_name": visit.subject.subject.last_name, + "nd_number": visit.subject.nd_number, "datetime_begin": serialize_date(visit.datetime_begin), "datetime_end": serialize_date(visit.datetime_end), "flying_team": flying_team_to_str(visit.subject.flying_team),