def get_queryset(self): """ Specifies if the queryset shall be filtered or not Returns: The queryset """ self.queryset = Metadata.objects.filter(is_active=True, ) # filter by query query = self.request.query_params.get("q", None) self.queryset = view_helper.filter_queryset_metadata_query( self.queryset, query) # filter by uuid uuid = self.request.query_params.get("uuid", None) self.queryset = view_helper.filter_queryset_metadata_uuid( self.queryset, uuid) # order by order_by = self.request.query_params.get("order", METADATA_DEFAULT_ORDER) if order_by not in self.orderable_fields: order_by = METADATA_DEFAULT_ORDER self.queryset = view_helper.order_queryset(self.queryset, order_by) return self.queryset
def get_queryset(self): """ Specifies if the queryset shall be filtered or not Returns: The queryset """ self.queryset = Layer.objects.filter(metadata__is_active=True) # filter by parent id pid = self.request.query_params.get("pid", None) self.queryset = view_helper.filter_queryset_service_pid( self.queryset, pid) # filter by query (title and abstract) query = self.request.query_params.get("q", None) self.queryset = view_helper.filter_queryset_service_query( self.queryset, query) # filter by qorganization org = self.request.query_params.get("orgid", None) self.queryset = view_helper.filter_queryset_services_organization_id( self.queryset, org) # filter by uuid uuid = self.request.query_params.get("uuid", None) self.queryset = view_helper.filter_queryset_services_uuid( self.queryset, uuid) # order by order_by = self.request.query_params.get("order", LAYER_DEFAULT_ORDER) if order_by not in self.orderable_fields: order_by = LAYER_DEFAULT_ORDER self.queryset = view_helper.order_queryset(self.queryset, order_by) return self.queryset
def filter_queryset(self, queryset): """ Filters the queryset Args: queryset (Queryset): Unfiltered queryset Returns: queryset (Queryset): Filtered queryset """ # filter by dimensions time_min = self.request.query_params.get("time-min", None) or None time_max = self.request.query_params.get("time-max", None) or None elevation_unit = self.request.query_params.get("elevation-unit", None) or None elevation_min = self.request.query_params.get("elevation-min", None) or None elevation_max = self.request.query_params.get("elevation-max", None) or None queryset = view_helper.filter_queryset_metadata_dimension_time( queryset, time_min, time_max) queryset = view_helper.filter_queryset_metadata_dimension_elevation( queryset, elevation_min, elevation_max, elevation_unit) # filter by bbox extent. fully-inside and partially-inside are mutually exclusive bbox = self.request.query_params.get("bbox", None) or None bbox_srs = self.request.query_params.get("bbox-srs", DEFAULT_SRS_STRING) bbox_strict = utils.resolve_boolean_attribute_val( self.request.query_params.get("bbox-strict", False) or False) queryset = view_helper.filter_queryset_metadata_bbox( queryset, bbox, bbox_srs, bbox_strict) # filter by service type type = self.request.query_params.get("type", None) queryset = view_helper.filter_queryset_metadata_type(queryset, type) # filter by category category = self.request.query_params.get("cat", None) category_strict = utils.resolve_boolean_attribute_val( self.request.query_params.get("cat-strict", False) or False) queryset = view_helper.filter_queryset_metadata_category( queryset, category, category_strict) # filter by query query = self.request.query_params.get("q", None) q_test = self.request.query_params.get("q-test", False) queryset = view_helper.filter_queryset_metadata_query( queryset, query, q_test) # order by order_by = self.request.query_params.get("order", CATALOGUE_DEFAULT_ORDER) if order_by not in self.orderable_fields: order_by = CATALOGUE_DEFAULT_ORDER queryset = view_helper.order_queryset(queryset, order_by) return queryset
def get_queryset(self): """ Specifies if the queryset shall be filtered or not Returns: The queryset """ self.queryset = Service.objects.filter(metadata__is_active=True, is_root=True) """ Layer as service is deactivated, since there is an own layer API # filter by service or service+layers las = self.request.query_params.get("las", False) las = utils.resolve_boolean_attribute_val(las) if not las: self.queryset = self.queryset.filter( is_root=False ) """ # filter by type service_type = self.request.query_params.get("type", None) self.queryset = view_helper.filter_queryset_service_type( self.queryset, service_type) # filter by query (title and abstract) query = self.request.query_params.get("q", None) self.queryset = view_helper.filter_queryset_service_query( self.queryset, query) # filter by organization org = self.request.query_params.get("orgid", None) self.queryset = view_helper.filter_queryset_services_organization_id( self.queryset, org) # filter by uuid uuid = self.request.query_params.get("uuid", None) self.queryset = view_helper.filter_queryset_services_uuid( self.queryset, uuid) # order by order_by = self.request.query_params.get("order", SERVICE_DEFAULT_ORDER) if order_by not in self.orderable_fields: order_by = SERVICE_DEFAULT_ORDER self.queryset = view_helper.order_queryset(self.queryset, order_by) return self.queryset
def get_queryset(self): """ Specifies if the queryset shall be filtered or not Returns: The queryset """ self.queryset = MrMapGroup.objects.all() # filter by organization orgid = self.request.query_params.get("orgid", None) self.queryset = view_helper.filter_queryset_group_organization_id( self.queryset, orgid) # order by order_by = self.request.query_params.get("order", GROUP_DEFAULT_ORDER) if order_by not in self.orderable_fields: order_by = GROUP_DEFAULT_ORDER self.queryset = view_helper.order_queryset(self.queryset, order_by) return self.queryset
def get_queryset(self): """ Specifies if the queryset shall be filtered or not Returns: The queryset """ self.queryset = Organization.objects.all() # filter by real or auto generated organizations auto_generated = self.request.query_params.get("ag", None) auto_generated = utils.resolve_boolean_attribute_val(auto_generated) self.queryset = view_helper.filter_queryset_real_organization( self.queryset, auto_generated) # order by order_by = self.request.query_params.get("order", ORGANIZATION_DEFAULT_ORDER) if order_by not in self.orderable_fields: order_by = ORGANIZATION_DEFAULT_ORDER self.queryset = view_helper.order_queryset(self.queryset, order_by) return self.queryset