From 1cdf38d1ae0b108f3b115960939e3dffc3e2fb46 Mon Sep 17 00:00:00 2001 From: Laurent Mignon Date: Fri, 4 Dec 2015 08:46:55 +0100 Subject: [PATCH] Fixes date convert to _utc_midnight --- mis_builder/models/mis_builder.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/mis_builder/models/mis_builder.py b/mis_builder/models/mis_builder.py index aabe90fb..1ef31918 100644 --- a/mis_builder/models/mis_builder.py +++ b/mis_builder/models/mis_builder.py @@ -41,6 +41,10 @@ from .aep import AccountingExpressionProcessor as AEP from .aggregate import _sum, _avg, _min, _max _logger = logging.getLogger(__name__) +DATE_LENGTH = len(datetime.date.today().strftime( + tools.DEFAULT_SERVER_DATE_FORMAT)) +DATETIME_LENGTH = len(datetime.datetime.now().strftime( + tools.DEFAULT_SERVER_DATETIME_FORMAT)) class AutoStruct(object): @@ -58,14 +62,17 @@ def _get_selection_label(selection, value): def _utc_midnight(d, tz_name, add_day=0): - d = datetime.datetime.strptime(d, tools.DEFAULT_SERVER_DATE_FORMAT) + d = d[:DATETIME_LENGTH] + if len(d) == DATE_LENGTH: + d += " 00:00:00" + d = datetime.datetime.strptime(d, tools.DEFAULT_SERVER_DATETIME_FORMAT) utc_tz = pytz.timezone('UTC') if add_day: d = d + datetime.timedelta(days=add_day) context_tz = pytz.timezone(tz_name) local_timestamp = context_tz.localize(d, is_dst=False) return local_timestamp.astimezone(utc_tz).strftime( - tools.DEFAULT_SERVER_DATE_FORMAT) + tools.DEFAULT_SERVER_DATETIME_FORMAT) def _python_var(var_str):