[IMP] project_mrp: Rename the file
authorsbh (Open ERP) <sbh@tinyerp.com>
Sat, 10 Jul 2010 13:42:00 +0000 (19:12 +0530)
committersbh (Open ERP) <sbh@tinyerp.com>
Sat, 10 Jul 2010 13:42:00 +0000 (19:12 +0530)
bzr revid: sbh@tinyerp.com-20100710134200-ziqqzyzx7fcax186

addons/project_mrp/__init__.py
addons/project_mrp/mrp.py [deleted file]
addons/project_mrp/project_procurement.py [new file with mode: 0644]
addons/purchase/__openerp__.py

index 766b70f..c2ef40b 100644 (file)
@@ -18,6 +18,6 @@
 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 ##############################################################################
-import mrp
+import project_procurement
 import project_mrp
 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project_mrp/mrp.py b/addons/project_mrp/mrp.py
deleted file mode 100644 (file)
index d4f703b..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-#    OpenERP, Open Source Management Solution
-#    Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
-#
-#    This program is free software: you can redistribute it and/or modify
-#    it under the terms of the GNU Affero General Public License as
-#    published by the Free Software Foundation, either version 3 of the
-#    License, or (at your option) any later version.
-#
-#    This program is distributed in the hope that it will be useful,
-#    but WITHOUT ANY WARRANTY; without even the implied warranty of
-#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-#    GNU Affero General Public License for more details.
-#
-#    You should have received a copy of the GNU Affero General Public License
-#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-
-from osv import fields, osv, orm
-
-import tools
-
-class procurement_order(osv.osv):
-    _name = "procurement.order"
-    _inherit = "procurement.order"
-    _columns = {
-        'task_id': fields.many2one('project.task', 'Task')
-    }
-
-    def action_produce_assign_service(self, cr, uid, ids, context=None):
-        if context is None:
-            context = {}
-        for procurement in self.browse(cr, uid, ids):
-            sline = self.pool.get('sale.order.line')
-            product_obj=self.pool.get('product.product')
-            content = ''
-            sale_order = self.pool.get('sale.order')
-            so_ref =  procurement.name.split(':')[0]
-            order_ids = sale_order.search(cr, uid, [('name', '=', so_ref)], context)
-
-            if order_ids:
-                sale_ids = sale_order.read(cr, uid, order_ids[0], ['order_line'], context=context)['order_line']
-            else:
-                so_ref =  procurement.origin.split(':')[0]
-                sale_ids = sline.search(cr, uid, [('procurement_id', '=',procurement.id)], context)
-            l = None
-            project_id = None
-            analytic_account_id = False
-            partner_id = False
-
-            for line in sline.browse(cr, uid, sale_ids, context=context):
-                content += (line.notes or '')
-                l = line
-                partner_id = line.order_id.partner_id.id
-                if line.order_id.project_id:
-                    analytic_account_id = line.order_id.project_id.id
-                    partner_id = line.order_id.partner_id.id
-                    content+="\n\n"+line.order_id.project_id.complete_name
-                    break
-
-            # Creating a project for task.Project is created from Procurement.
-            project_obj = self.pool.get('project.project')
-            proj_name = tools.ustr(so_ref)
-            product_project_id =procurement.product_id.project_id and procurement.product_id.project_id.id or False
-            proj_exist_id = project_obj.search(cr, uid, [('name', '=', proj_name)], context=context)
-            if  not proj_exist_id:
-                project_id = project_obj.create(cr, uid, {'name': proj_name, 'partner_id': partner_id,'parent_id':product_project_id})
-            else:
-                project_id = proj_exist_id[0]
-
-            self.write(cr, uid, [procurement.id], {'state': 'running'})
-
-            name_task = ('','')
-            planned_hours=0.0
-            if procurement.product_id.type == 'service':
-                proc_name = procurement.name
-                if procurement.origin == proc_name:
-                    proc_name = procurement.product_id.name
-
-                name_task = (procurement.origin, proc_name or '')
-            else:
-                name_task = (procurement.product_id.name or procurement.origin, procurement.name or '')
-            planned_hours= procurement.product_id.sale_delay +procurement.product_id. produce_delay   
-            task_id = self.pool.get('project.task').create(cr, uid, {
-                'name': '%s:%s' % name_task,
-                'date_deadline': procurement.date_planned,
-                'planned_hours':planned_hours,
-                'remaining_hours': planned_hours,
-                'user_id': procurement.product_id.product_manager.id,
-                'notes': "b"+(l and l.order_id.note or ''),
-                'procurement_id': procurement.id,
-                'description': content,
-                'date_deadline': procurement.date_planned,
-                'state': 'draft',
-                'partner_id': l and l.order_id.partner_id.id or False,
-                'company_id': procurement.company_id.id,
-                'project_id': project_id,
-            },context=context)
-            self.write(cr, uid, [procurement.id],{'task_id':task_id}) 
-            product_obj.write(cr,uid,[procurement.product_id.id],{'project_id':project_id})
-        return task_id
-
-procurement_order()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/project_mrp/project_procurement.py b/addons/project_mrp/project_procurement.py
new file mode 100644 (file)
index 0000000..d4f703b
--- /dev/null
@@ -0,0 +1,108 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from osv import fields, osv, orm
+
+import tools
+
+class procurement_order(osv.osv):
+    _name = "procurement.order"
+    _inherit = "procurement.order"
+    _columns = {
+        'task_id': fields.many2one('project.task', 'Task')
+    }
+
+    def action_produce_assign_service(self, cr, uid, ids, context=None):
+        if context is None:
+            context = {}
+        for procurement in self.browse(cr, uid, ids):
+            sline = self.pool.get('sale.order.line')
+            product_obj=self.pool.get('product.product')
+            content = ''
+            sale_order = self.pool.get('sale.order')
+            so_ref =  procurement.name.split(':')[0]
+            order_ids = sale_order.search(cr, uid, [('name', '=', so_ref)], context)
+
+            if order_ids:
+                sale_ids = sale_order.read(cr, uid, order_ids[0], ['order_line'], context=context)['order_line']
+            else:
+                so_ref =  procurement.origin.split(':')[0]
+                sale_ids = sline.search(cr, uid, [('procurement_id', '=',procurement.id)], context)
+            l = None
+            project_id = None
+            analytic_account_id = False
+            partner_id = False
+
+            for line in sline.browse(cr, uid, sale_ids, context=context):
+                content += (line.notes or '')
+                l = line
+                partner_id = line.order_id.partner_id.id
+                if line.order_id.project_id:
+                    analytic_account_id = line.order_id.project_id.id
+                    partner_id = line.order_id.partner_id.id
+                    content+="\n\n"+line.order_id.project_id.complete_name
+                    break
+
+            # Creating a project for task.Project is created from Procurement.
+            project_obj = self.pool.get('project.project')
+            proj_name = tools.ustr(so_ref)
+            product_project_id =procurement.product_id.project_id and procurement.product_id.project_id.id or False
+            proj_exist_id = project_obj.search(cr, uid, [('name', '=', proj_name)], context=context)
+            if  not proj_exist_id:
+                project_id = project_obj.create(cr, uid, {'name': proj_name, 'partner_id': partner_id,'parent_id':product_project_id})
+            else:
+                project_id = proj_exist_id[0]
+
+            self.write(cr, uid, [procurement.id], {'state': 'running'})
+
+            name_task = ('','')
+            planned_hours=0.0
+            if procurement.product_id.type == 'service':
+                proc_name = procurement.name
+                if procurement.origin == proc_name:
+                    proc_name = procurement.product_id.name
+
+                name_task = (procurement.origin, proc_name or '')
+            else:
+                name_task = (procurement.product_id.name or procurement.origin, procurement.name or '')
+            planned_hours= procurement.product_id.sale_delay +procurement.product_id. produce_delay   
+            task_id = self.pool.get('project.task').create(cr, uid, {
+                'name': '%s:%s' % name_task,
+                'date_deadline': procurement.date_planned,
+                'planned_hours':planned_hours,
+                'remaining_hours': planned_hours,
+                'user_id': procurement.product_id.product_manager.id,
+                'notes': "b"+(l and l.order_id.note or ''),
+                'procurement_id': procurement.id,
+                'description': content,
+                'date_deadline': procurement.date_planned,
+                'state': 'draft',
+                'partner_id': l and l.order_id.partner_id.id or False,
+                'company_id': procurement.company_id.id,
+                'project_id': project_id,
+            },context=context)
+            self.write(cr, uid, [procurement.id],{'task_id':task_id}) 
+            product_obj.write(cr,uid,[procurement.product_id.id],{'project_id':project_id})
+        return task_id
+
+procurement_order()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
index 471f521..479155f 100644 (file)
@@ -58,7 +58,8 @@
              'test/purchase_from_order.yml',
              'test/purchase_from_manual.yml',
 #             'test/purchase_from_picking.yml',
-             'purchase_unit_test.xml'
+             'purchase_unit_test.xml',
+             'test/procurement_buy.yml',
     ],
     'demo': ['purchase_demo.xml'],
     'installable': True,