From e9c1456e280a58c47c639adeca661e21644f971a Mon Sep 17 00:00:00 2001 From: Benoit Guillot Date: Thu, 22 Dec 2011 09:31:44 +0100 Subject: [PATCH 1/2] [REF] Refactor schedule_date and order_dates bzr revid: benoit.guillot@akretion.com.br-20111222083144-btyyghy55dulim0h --- addons/purchase/purchase.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py index 49b1f70a3e3..1fa0a3f9570 100644 --- a/addons/purchase/purchase.py +++ b/addons/purchase/purchase.py @@ -828,6 +828,14 @@ class procurement_order(osv.osv): po_vals.update({'order_line': [(0,0,line_vals)]}) return self.pool.get('purchase.order').create(cr, uid, po_vals, context=context) + def _get_schedule_date(self, cr, uid, procurement_date_planned, company, context=None): + schedule_date = (procurement_date_planned - relativedelta(days=company.po_lead)) + return schedule_date + + def _get_order_dates(self, cr, uid, schedule_date, seller_delay, context=None): + order_dates = schedule_date - relativedelta(days=seller_delay) + return order_dates + def make_po(self, cr, uid, ids, context=None): """ Make purchase order from procurement @return: New created Purchase Orders procurement wise @@ -860,9 +868,9 @@ class procurement_order(osv.osv): price = pricelist_obj.price_get(cr, uid, [pricelist_id], procurement.product_id.id, qty, partner_id, {'uom': uom_id})[pricelist_id] - order_date = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S') - schedule_date = (order_date - relativedelta(days=company.po_lead)) - order_dates = schedule_date - relativedelta(days=seller_delay) + procurement_date_planned = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S') + schedule_date = self._get_schedule_date(cr, uid, procurement_date_planned, company, context=context) + order_dates = self._get_order_dates(cr, uid, schedule_date, seller_delay, context=context) #Passing partner_id to context for purchase order line integrity of Line name context.update({'lang': partner.lang, 'partner_id': partner_id}) From 45b98c21f59a7c2eb4707a26e080b1908e53a0ff Mon Sep 17 00:00:00 2001 From: Benoit Guillot Date: Thu, 22 Dec 2011 17:01:43 +0100 Subject: [PATCH 2/2] [REF] refactor to use procurement object bzr revid: benoit.guillot@akretion.com.br-20111222160143-imuns5olo2r23crj --- addons/purchase/purchase.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py index 1fa0a3f9570..a37e3f8fb2b 100644 --- a/addons/purchase/purchase.py +++ b/addons/purchase/purchase.py @@ -828,7 +828,8 @@ class procurement_order(osv.osv): po_vals.update({'order_line': [(0,0,line_vals)]}) return self.pool.get('purchase.order').create(cr, uid, po_vals, context=context) - def _get_schedule_date(self, cr, uid, procurement_date_planned, company, context=None): + def _get_schedule_date(self, cr, uid, procurement, company, context=None): + procurement_date_planned = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S') schedule_date = (procurement_date_planned - relativedelta(days=company.po_lead)) return schedule_date @@ -868,8 +869,7 @@ class procurement_order(osv.osv): price = pricelist_obj.price_get(cr, uid, [pricelist_id], procurement.product_id.id, qty, partner_id, {'uom': uom_id})[pricelist_id] - procurement_date_planned = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S') - schedule_date = self._get_schedule_date(cr, uid, procurement_date_planned, company, context=context) + schedule_date = self._get_schedule_date(cr, uid, procurement, company, context=context) order_dates = self._get_order_dates(cr, uid, schedule_date, seller_delay, context=context) #Passing partner_id to context for purchase order line integrity of Line name