Skip to content

Conversation

@esirK
Copy link
Contributor

@esirK esirK commented Feb 1, 2021

Description

Adds location filter for both v1 and v2 of the API

Fixes # (issue)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)

Screenshots

Screenshot 2021-02-01 at 13 23 35
Screenshot 2021-02-01 at 13 23 54

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation

@esirK esirK self-assigned this Feb 1, 2021
@esirK esirK requested a review from ascii-dev February 1, 2021 10:25
@esirK esirK added the enhancement New feature or request label Feb 1, 2021
Copy link
Member

@kilemensi kilemensi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM @esirK ... Can we do case insensitive matching for locations?

@esirK esirK force-pushed the ft-add-location-filter branch from 0114a25 to da306d7 Compare February 1, 2021 11:27
@esirK esirK merged commit 92d8311 into develop Feb 1, 2021
@esirK esirK deleted the ft-add-location-filter branch February 1, 2021 11:34
esirK added a commit that referenced this pull request Feb 2, 2021
* Ft locations endpoint (#75)

* Adds Location Serializer

* Allows users to list and create locations

* Adds a basename for sensors_location_router

* Adds Pagination

* Adds Node creation API endpoint (#76)

* Adds Node creation API endpoint

* Remove un used serializer import

* Add Sensors + Sensor_Type Endpoint (#77)

* sensors endpoint

* fix serializers

* authentication on post

* sensors type endpoint

* Update sensorsafrica/api/v2/views.py

Co-authored-by: _ Kilemensi <kilemensi@users.noreply.github.com>

* Update sensorsafrica/api/v2/views.py

Co-authored-by: _ Kilemensi <kilemensi@users.noreply.github.com>

* spelling

Co-authored-by: _ Kilemensi <kilemensi@users.noreply.github.com>

* [Hotfix] Creation api (#79)

* Standardize naming around views, models and routes
* Add tests

* [Feature] Public / Private Data (#81)

* Add SensorDataView using CursorPagination to show all available data

* Make /v2/data return all data, keept /data/<sensortype> for air/water,
etc.

* Switch computation to only work with public data (sensorsAFRICA data for
now)

* Upgrade backward compatible deps

* Add default AUTHENTICATION_CLASSES (#82)

Feinstaub framework doesn't set per view authentication classes and
hence we need default ones

* [Fix] serializer (#83)

* Introduce SensorTypeSerializer that will handle uid

* Use SensorTypeSerializer

* Ensure city and data exists before trying to upload (#85)

* Upload data from public sensors only (#87)

* [Feature] Make v1/now return public data only (#86)

* Recreate feinstaub NowView but with public sensors filter

* Switch to custom NowView

* Add owner as part of node (#89)

* [Fix] v1/node should check groups (#88)

* Add NodeView that checks group ownership + pagination

* Update router to use new NodeView

* Use user id instead of user object (#90)

* Adds endpoint for providing metadata (#91)

* Adds endpoint for providing metadata

* Use dynamic database name

* Returns sensors locations and last time database was updated.

* Adds sensor networks to returned metadata

* Adds authentication to the meta endpoint

* Remove a default NETWORKS_OWNER

* Use latest created SensorDataValue to know when the database was last updated.

* Ensure we only return SensorLocations with a country

* Ft increase gurnicorn timeout (#92)

* Increase Gunicorn timeout to 3 minutes

* Return sorted sensors locations

* Includes country in the sensor data serializer (#93)

* Includes country in the sensor data serializer

* Only return location id and country

* Ft add location filter (#95)

* Adds a nodes filter using location

* Adds nodes filter for v1 of the API

* Remove filterling on v2 since it's only used for the F.E map

* Use default django filter backend

* Makes country location matching case insensitive.

* [Ft] Nodes last notify (#94)

* update node last_notify

* update nodeserializer

* import from feinstaub

* class naming

* code refactor

* remove repeating line

* comment line

* Update sensorsafrica/api/v1/serializers.py

Co-authored-by: _ Kilemensi <kilemensi@users.noreply.github.com>

* rename verbose to lastnotify

* update only when current notify is less than sensordata timestamp

Co-authored-by: _ Kilemensi <kilemensi@users.noreply.github.com>

* Ft add location filter for /v2/data (#97)

* Adds location filter for /data endpoint

* Temporaliry Remove iexact

* [FT] Time filter  (#96)

* add last_notify filter on nodes, sensorfilter

* view class override

* filter ovverides

* add exact to look up exp

* Includes missing import

Co-authored-by: esir <esirkings@gmail.com>

Co-authored-by: Khadija Mahanga <khadijamahanga@y7mail.com>
Co-authored-by: _ Kilemensi <kilemensi@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants