From e6b2e4694e2e02380488c3f31ba11ea8a782e293 Mon Sep 17 00:00:00 2001 From: "Vir (Open ERP)" Date: Thu, 18 Feb 2010 15:43:12 +0530 Subject: [PATCH] [ADD] hr : new object added as crm.job, changes and modification related to new object bzr revid: vir@tinyerp.com-20100218101312-8a632c996z8ij7yu --- addons/hr/__init__.py | 6 ++-- addons/hr/hr.py | 31 +++++++++++++++++++ addons/hr/hr_view.xml | 69 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 103 insertions(+), 3 deletions(-) diff --git a/addons/hr/__init__.py b/addons/hr/__init__.py index 2551ce843d1..b2396739116 100644 --- a/addons/hr/__init__.py +++ b/addons/hr/__init__.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- ############################################################################## -# +# # OpenERP, Open Source Management Solution # Copyright (C) 2004-2010 Tiny SPRL (). # @@ -15,13 +15,13 @@ # 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 . +# along with this program. If not, see . # ############################################################################## +import hr_department import hr import installer -import hr_department import report import wizard diff --git a/addons/hr/hr.py b/addons/hr/hr.py index 16c99c35eac..843bd56d608 100755 --- a/addons/hr/hr.py +++ b/addons/hr/hr.py @@ -61,6 +61,33 @@ class hr_employee_marital_status(osv.osv): } hr_employee_marital_status() +class crm_job(osv.osv): + + def _no_of_employee(self, cr, uid, ids, name,args,context=None): + res = {} + for emp in self.browse(cr, uid, ids): + res[emp.id] = str(len(emp.employee_ids)) + return res + + _name = "crm.job" + _description = "Job Information" + _columns = { + 'name': fields.char('Name', size=128, required=True, select=True), + 'ref': fields.char('Code', size=64), + 'expected_employees':fields.integer('Expected Employees'), + 'no_of_employee': fields.function(_no_of_employee, method=True, string='No of Employee', type='char'), + 'employee_ids':fields.one2many('hr.employee', 'job_id','Employees'), + 'description': fields.text('Job Description'), + 'requirements':fields.text('Requirements'), + 'department_id':fields.many2one('hr.department','Department') + + } + _defaults = { + 'expected_employees': lambda *a: 1, + } + +crm_job() + class hr_employee(osv.osv): _name = "hr.employee" _description = "Employee" @@ -86,6 +113,8 @@ class hr_employee(osv.osv): 'child_ids': fields.one2many('hr.employee', 'parent_id','Subordinates'), 'resource_id': fields.many2one('resource.resource','Resource',ondelete='cascade'), 'coach_id':fields.many2one('res.users','Coach'), + 'job_id':fields.many2one('crm.job', 'Job'), + } _defaults = { 'active' : lambda *a: True, @@ -106,4 +135,6 @@ class hr_employee(osv.osv): ] hr_employee() + + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr/hr_view.xml b/addons/hr/hr_view.xml index e770052d620..7bb3b0647bf 100644 --- a/addons/hr/hr_view.xml +++ b/addons/hr/hr_view.xml @@ -66,6 +66,7 @@ + @@ -295,5 +296,73 @@ + + crm.job.form + crm.job + form + +
+ + + + + + + + + + + + + + + + + +
+ + crm.job.tree + crm.job + tree + + + + + + + + + + + + Job + crm.job + search + + + + + + + + + + + Job + crm.job + form + tree,form + + + + + + + + +