[FIX] sale_order_dates: date_to_datetime fixed
bzr revid: qdp-launchpad@openerp.com-20140414161229-f4s43qt5c5t3gedl
This commit is contained in:
parent
35d08a8e4c
commit
613901196b
|
@ -35,18 +35,16 @@ class sale_order_dates(osv.osv):
|
|||
return super(sale_order_dates, self).copy(cr, uid, id, default=default,
|
||||
context=context)
|
||||
|
||||
def _get_date_planned(self, cr, uid, order, line, start_date, context=None):
|
||||
def _get_date_planned(self, cr, uid, order, line, start_date, context=None):
|
||||
"""Compute the expected date from the requested date, not the order date"""
|
||||
if order and order.requested_date:
|
||||
planned_str = self.date_to_datetime(cr, uid,
|
||||
order.requested_date, context)
|
||||
date_planned = datetime.strptime(planned_str,
|
||||
DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
planned_str = fields.date.date_to_datetime(cr, uid, order.requested_date, context)
|
||||
date_planned = datetime.strptime(planned_str, DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
date_planned -= timedelta(days=order.company_id.security_lead)
|
||||
return date_planned.strftime(DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
return super(sale_order_dates, self)._get_date_planned(
|
||||
cr, uid, order, line, start_date, context=context)
|
||||
|
||||
|
||||
def _get_effective_date(self, cr, uid, ids, name, arg, context=None):
|
||||
"""Read the shipping date from the related packings"""
|
||||
# TODO: would be better if it returned the date the picking was processed?
|
||||
|
@ -67,13 +65,9 @@ class sale_order_dates(osv.osv):
|
|||
res = {}
|
||||
dates_list = []
|
||||
for order in self.browse(cr, uid, ids, context=context):
|
||||
order_datetime_str = self.date_to_datetime(cr, uid, order.date_order,
|
||||
context)
|
||||
order_datetime = datetime.strptime(order_datetime_str,
|
||||
DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
dates_list = []
|
||||
for line in order.order_line:
|
||||
dt = order_datetime + timedelta(days=line.delay or 0.0)
|
||||
dt = order.date_order + timedelta(days=line.delay or 0.0)
|
||||
dt_s = dt.strftime(DEFAULT_SERVER_DATE_FORMAT)
|
||||
dates_list.append(dt_s)
|
||||
if dates_list:
|
||||
|
|
|
@ -18,14 +18,12 @@
|
|||
!python {model: sale.order}: |
|
||||
from datetime import datetime, timedelta
|
||||
from openerp.tools import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT
|
||||
from openerp.fields import date
|
||||
|
||||
so = self.browse(cr, uid, ref("sale.sale_order_6"))
|
||||
security_delay = timedelta(days=so.company_id.security_lead)
|
||||
requested_date = datetime.strptime(
|
||||
self.date_to_datetime(cr, uid, so.requested_date),
|
||||
DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
right_date = (requested_date - security_delay).strftime(
|
||||
DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
requested_date = datetime.strptime(date.date_to_datetime(cr, uid, so.requested_date), DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
right_date = (requested_date - security_delay).strftime(DEFAULT_SERVER_DATETIME_FORMAT)
|
||||
for line in so.order_line:
|
||||
assert line.procurement_id, "No Procurement was created"
|
||||
assert line.procurement_id.date_planned == right_date, "The planned date for the Procurement Order is wrong"
|
||||
|
|
Loading…
Reference in New Issue