def hourly_download(request):
    form = TimeSeriesFilterForm(request.GET)

    if form.is_valid():
        gages = form.cleaned_data["site_list"]
        _logger.info("hourly csv download, gages is %s" % (gages))
        beginDate = form.cleaned_data["timeseries_start"]
        endDate = form.cleaned_data["timeseries_end"]

        station_dict = stage_queries.station_dict(gages)

        beginDate = form.cleaned_data["timeseries_start"]
        endDate = form.cleaned_data["timeseries_end"]

        q, dt = stage_queries.hourly_query(*station_dict.values())
        if beginDate:
            q = q.where(dt >= beginDate)
        if endDate:
            q = q.where(dt <= endDate)
        data = q.execute()

        # data_type = 'Hourly Water Level, NAVD88(ft)'  # hard coded for now... maybe this could be in the form where the user's can selected between hourly and daily data
        query_metadata_list = create_metadata_header(
            HEADER_MESSAGE, EDEN_CONTACT, END_OF_HEADER, form.cleaned_data, station_dict.values()
        )

        response = HttpResponse(content_type="text/csv")

        stage_data.write_rdb(data, response, metadata=query_metadata_list)
        return response
    else:
        return HttpResponseBadRequest(",".join(form.errors))
Esempio n. 2
0
def hourly_download(request):
    form = TimeSeriesFilterForm(request.GET)

    if (form.is_valid()):
        gages = form.cleaned_data['site_list']
        _logger.info("hourly csv download, gages is %s" % (gages))
        beginDate = form.cleaned_data["timeseries_start"]
        endDate = form.cleaned_data["timeseries_end"]

        station_dict = stage_queries.station_dict(gages)

        beginDate = form.cleaned_data["timeseries_start"]
        endDate = form.cleaned_data["timeseries_end"]

        q, dt = stage_queries.hourly_query(*station_dict.values())
        if beginDate:
            q = q.where(dt >= beginDate)
        if endDate:
            q = q.where(dt <= endDate)
        data = q.execute()

        # data_type = 'Hourly Water Level, NAVD88(ft)'  # hard coded for now... maybe this could be in the form where the user's can selected between hourly and daily data
        query_metadata_list = create_metadata_header(HEADER_MESSAGE, EDEN_CONTACT, END_OF_HEADER, form.cleaned_data, station_dict.values())

        response = HttpResponse(content_type='text/csv')

        stage_data.write_rdb(data, response, metadata=query_metadata_list)
        return response
    else:
        return HttpResponseBadRequest(",".join(form.errors))
Esempio n. 3
0
    def test_hourly_navd_88(self):
        s = stations[0]
        gage = s.station_name_web
        s.id = None
        s.stationdatum.convert_to_navd88_feet = 200

        q, _ = station_data.hourly_query(s)
        rs = q.execute()
        for r in rs:
            v = r[gage]
            if v is not None:
                self.assertGreater(v, 100, "navd 88 correction, got " + str(v))
    def test_hourly_navd_88(self):
        s = stations[0]
        gage = s.station_name_web
        s.id = None
        s.stationdatum.convert_to_navd88_feet = 200

        q, _ = station_data.hourly_query(s)
        rs = q.execute()
        for r in rs:
            v = r[gage]
            if v is not None:
                self.assertGreater(v, 100, "navd 88 correction, got " + str(v))
Esempio n. 5
0
    def test_hourly(self):

        q, dt = station_data.hourly_query(*stations)
        q = q.where(dt >= '2003-07-20')
        self.check(q, ['G-3567', '2A300'], ['G-3567 flag', '2A300 flag'])
    def test_hourly(self):

        q, dt = station_data.hourly_query(*stations)
        q = q.where(dt >= '2003-07-20')
        self.check(q, ['G-3567', '2A300'], ['G-3567 flag', '2A300 flag'])