The current implementation has us requesting OrganisationVenue
's based on the events they run on a day-to-day basis. This means on a Monday, only OrganisationVenue
's that have events running that day should be shown.
A typical request is only for one single day, as each day is loaded independently. Parameters:
lat
lon
radius
start_time
end_time
activity_type
An expected response would be along the lines of:
[
{ "organisation" : {...},
"venue" : {...},
"event_min_price : ...,
"event_count" : ...
},
{ "organisation" : {...},
"venue" : {...},
"event_min_price : ...,
"event_count" : ...
},
]
Each of these OrganisationVenue
's should only be relevant for the date and activity_type supplied.
On my end, given that I no longer have access to the Event
's, I would attach a dictionary onto the OrganisationVenue
linking activity_types to the day they run. I can obtain this information from the request I make. Moreover, I would need to link
event countand
event_min
_price` to specific dates too.
Therefore, when loading from cache, I can safely query the dictionary for the activity_type and see what if any of the dates match the current query. If they do, I can show that organisation venue.
Okay. I'll need to give this a bunch of thought as it's going to either break the current implementation or need more.
Filtering across so much (and then returning just the
orgs
/venues
isn't so easy given where the data is.E.g.:
acitivity_type
is inevents
, so we'd need to go throughOrganisation
→Events
to filter by that.Can you think of something which avoids doing that?