X-Git-Url: https://git.toastfreeware.priv.at/chrisu/seepark.git/blobdiff_plain/8f6a1d3a3440e4fa5324a211715880dc9144a6e2..cd14da74ff0e9262da8f61669850406f532570bc:/web/seepark_web.py diff --git a/web/seepark_web.py b/web/seepark_web.py index 1ff5151..1a6c7c6 100644 --- a/web/seepark_web.py +++ b/web/seepark_web.py @@ -291,8 +291,15 @@ def currentwatertemperature(sensorid): return result.value, result.timestamp -def add_month(date): - return (date + datetime.timedelta(days=42)).replace(day=1) +def first_of_month(date, month): + date = date.replace(day=1) + if month == 0: + return date + if month == 1: + return (date + datetime.timedelta(days=42)).replace(day=1) + if month == -1: + return (date - datetime.timedelta(days=1)).replace(day=1) + assert False @app.route('/api//sensors/') @@ -365,7 +372,7 @@ def report(year, month): paper_size = (29.7 / 2.54, 21. / 2.54) # A4 begin = datetime.datetime(year, month, 1) - end = add_month(begin) + end = first_of_month(begin, 1) water_data = sensordata_to_xy(select_sensordata(mainsensor, 'Wassertemperatur', begin, end)) air_data = openweatherdata_to_xy(select_openweatherdata(cityid, begin, end))