From 3e713d3aa91fbf81ca46083cf7c5b6ab3dbc8d2b Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Fri, 9 Apr 2010 09:47:07 +0200 Subject: [PATCH] [IMP] purchase requisition bzr revid: fp@tinyerp.com-20100409074707-h9huh6gi75jobmod --- addons/mrp/mrp_view.xml | 3 --- .../purchase_requisition/purchase_requisition.py | 15 ++++++++++----- .../purchase_requisition_view.xml | 14 ++++++++++---- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index 6b3918048af..cf3a2ac584d 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -895,9 +895,6 @@ {} - - Procurement Exceptions ir.actions.act_window diff --git a/addons/purchase_requisition/purchase_requisition.py b/addons/purchase_requisition/purchase_requisition.py index 84c760a6db9..4a8fc7aadca 100644 --- a/addons/purchase_requisition/purchase_requisition.py +++ b/addons/purchase_requisition/purchase_requisition.py @@ -30,18 +30,20 @@ class purchase_requisition(osv.osv): _description="Purchase requisition" _columns = { 'name': fields.char('Requisition Reference', size=32,required=True), - 'date_start': fields.datetime('Date Start'), - 'date_end': fields.datetime('Date End'), + 'origin': fields.char('Origin', size=32), + 'date_start': fields.datetime('Requisition Date'), + 'date_end': fields.datetime('Requisition Deadline'), 'user_id': fields.many2one('res.users', 'Responsible'), - 'exclusive': fields.boolean('Exclusive', help="If the requisition is exclusive, it will cancel all purchase orders when you confirm one of them"), + 'exclusive': fields.selection([('exclusive','Purchase Tender (exclusive)'),('multiple','Multiple Requisitions')],'Requisition Type', help="If the requisition is exclusive, it will cancel all purchase orders when you confirm one of them", required=True), 'description': fields.text('Description'), 'purchase_ids' : fields.one2many('purchase.order','requisition_id','Purchase Orders'), 'line_ids' : fields.one2many('purchase.requisition.line','requisition_id','Products to Purchase'), - 'state': fields.selection([('draft','Draft'),('open','Open'),('close','Close')], 'State', required=True) + 'state': fields.selection([('draft','Draft'),('open','Open'),('cancel','Cancelled'),('close','Close')], 'State', required=True) } _defaults = { 'date_start': lambda *args: time.strftime('%Y-%m-%d %H:%M:%S'), 'state': lambda *args: 'open', + 'exclusive': lambda *args: 'multiple', 'name': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'purchase.order.requisition'), } purchase_requisition() @@ -67,7 +69,7 @@ class purchase_order(osv.osv): def wkf_confirm_order(self, cr, uid, ids, context={}): res = super(purchase_order, self).wkf_confirm_order(cr, uid, ids, context) for po in self.browse(cr, uid, ids, context): - if po.requisition_id and po.requisition_id.exclusive: + if po.requisition_id and (po.requisition_id.exclusive=='exclusive'): for order in po.requisition_id.purchase_ids: if order.id<>po.id: wf_service = netsvc.LocalService("workflow") @@ -97,6 +99,8 @@ class mrp_procurement(osv.osv): if procurement.product_id.purchase_requisition: self.pool.get('purchase.requisition').create(cr, uid, { 'name': procurement.name, + 'origin': procurement.name, + 'date_end': procurement.date_planned, 'lines_ids': [(0,0,{ 'product_id': procurement.product_id.id, 'product_uom_id': procurement.product_uom.id, @@ -105,4 +109,5 @@ class mrp_procurement(osv.osv): })], 'purchase_ids': [(6,0,[po_id])] }) + return res mrp_procurement() diff --git a/addons/purchase_requisition/purchase_requisition_view.xml b/addons/purchase_requisition/purchase_requisition_view.xml index 1657dcda9cf..e911305df32 100644 --- a/addons/purchase_requisition/purchase_requisition_view.xml +++ b/addons/purchase_requisition/purchase_requisition_view.xml @@ -32,10 +32,14 @@ purchase.requisition
- - - - + + + + + + + + @@ -72,6 +76,7 @@ + @@ -85,6 +90,7 @@