From a7bf53ebaab473184b55134efbf3f7c5890ea639 Mon Sep 17 00:00:00 2001 From: Cedric Snauwaert Date: Tue, 9 Apr 2013 11:14:33 +0200 Subject: [PATCH] [FIX]error introduce in revid:odo@openerp.com-20130405151451-anjsdt18gmsxr01k function date_to_datetime should return a date in server datetime format bzr revid: csn@openerp.com-20130409091433-4u3nxejdrti7czu3 --- addons/purchase/purchase.py | 5 +++-- addons/sale_stock/sale_stock.py | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py index 3446d71c0e5..0e4619f2427 100644 --- a/addons/purchase/purchase.py +++ b/addons/purchase/purchase.py @@ -604,7 +604,8 @@ class purchase_order(osv.osv): :return: UTC datetime string for server-side use """ # TODO: move to fields.datetime in server after 7.0 - user_datetime = datetime.strptime(userdate, DEFAULT_SERVER_DATE_FORMAT) + relativedelta(hours=12.0) + user_date = datetime.strptime(userdate, DEFAULT_SERVER_DATE_FORMAT) + user_datetime = user_date + relativedelta(hours=12.0) if context and context.get('tz'): tz_name = context['tz'] else: @@ -615,7 +616,7 @@ class purchase_order(osv.osv): local_timestamp = context_tz.localize(user_datetime, is_dst=False) user_datetime = local_timestamp.astimezone(utc) return user_datetime.strftime(DEFAULT_SERVER_DATETIME_FORMAT) - return userdate + return user_date.strftime(DEFAULT_SERVER_DATETIME_FORMAT) def _prepare_order_picking(self, cr, uid, order, context=None): return { diff --git a/addons/sale_stock/sale_stock.py b/addons/sale_stock/sale_stock.py index e874bc7fdcc..7a499f678e0 100644 --- a/addons/sale_stock/sale_stock.py +++ b/addons/sale_stock/sale_stock.py @@ -243,7 +243,8 @@ class sale_order(osv.osv): :return: UTC datetime string for server-side use """ # TODO: move to fields.datetime in server after 7.0 - user_datetime = datetime.strptime(userdate, DEFAULT_SERVER_DATE_FORMAT) + relativedelta(hours=12.0) + user_date = datetime.strptime(userdate, DEFAULT_SERVER_DATE_FORMAT) + user_datetime = user_date + relativedelta(hours=12.0) if context and context.get('tz'): tz_name = context['tz'] else: @@ -254,7 +255,7 @@ class sale_order(osv.osv): local_timestamp = context_tz.localize(user_datetime, is_dst=False) user_datetime = local_timestamp.astimezone(utc) return user_datetime.strftime(DEFAULT_SERVER_DATETIME_FORMAT) - return userdate + return user_date.strftime(DEFAULT_SERVER_DATETIME_FORMAT) # if mode == 'finished': # returns True if all lines are done, False otherwise @@ -374,7 +375,7 @@ class sale_order(osv.osv): def _get_date_planned(self, cr, uid, order, line, start_date, context=None): start_date = self.date_to_datetime(cr, uid, start_date, context) date_planned = datetime.strptime(start_date, DEFAULT_SERVER_DATETIME_FORMAT) + relativedelta(days=line.delay or 0.0) - date_planned = (date_planned - timedelta(days=order.company_id.security_lead)).strftime(DEFAULT_SERVER_DATETIME_FORMAT) + date_planned = (date_planned - timedelta(days=order.company_id.security_lead)) return date_planned def _create_pickings_and_procurements(self, cr, uid, order, order_lines, picking_id=False, context=None):