[IMP] Improve and remove unnecessary code

bzr revid: tpa@tinyerp.com-20130524101611-r6lr1ifjcs92xyes
This commit is contained in:
Turkesh Patel (Open ERP) 2013-05-24 15:46:11 +05:30
parent 348a88c44b
commit 3ca63cc9b1
3 changed files with 10 additions and 26 deletions

View File

@ -384,7 +384,6 @@
<field name="arch" type="xml">
<search string="Jobs">
<field name="name" string="Job"/>
<filter icon="terp-mail-message-new" string="Unread Messages" name="message_unread" domain="[('message_unread','=',True)]"/>
<filter icon="terp-camera_test" domain="[('state','=','open')]" string="In Position" help="In Position"/>
<filter icon="terp-personal+" domain="[('state','=','recruit')]" string="In Recruitment" help="In Recruitment"/>
<field name="department_id"/>

View File

@ -492,28 +492,13 @@ class hr_job(osv.osv):
_name = "hr.job"
_inherits = {'mail.alias': 'alias_id'}
def _count_priority(self, cr, uid, ids, name, args, context=None):
"""Applicant, priority count like number of star 3,2,1(star rating)
"""
def _application_count(self, cr, uid, ids, field_name, arg, context=None):
"""Calculate total Applications per job"""
res = dict.fromkeys(ids, 0)
applicant_obj = self.pool.get('hr.applicant')
res = {}
for position in self.browse(cr, uid, ids, context=context):
res[position.id] = {}
priority1 = 0
priority2 = 0
priority3 = 0
rate_ids = applicant_obj.search(cr, uid, [('job_id', '=', position.id)], context=context)
for applicant in applicant_obj.browse(cr, uid, rate_ids, context=context):
if applicant.job_id.id == position.id:
if applicant.priority == '3':
priority3 += 1
elif applicant.priority == '2':
priority2 += 1
elif applicant.priority == '1':
priority1 += 1
else:
pass
res[position.id] = {'priority1': priority1, 'priority2': priority2, 'priority3': priority3, 'total_application':len(rate_ids)}
applicant_ids = applicant_obj.search(cr, uid, [('job_id', 'in', ids)])
for applicant in applicant_obj.browse(cr, uid, applicant_ids, context):
res[applicant.job_id.id] += 1
return res
_columns = {
@ -521,7 +506,7 @@ class hr_job(osv.osv):
'alias_id': fields.many2one('mail.alias', 'Alias', ondelete="cascade", required=True,
help="Email alias for this job position. New emails will automatically "
"create new applicants for this job position."),
'priority_count': fields.function(_count_priority, string='Total Priority Employees', type="char"),
'application_count': fields.function(_application_count, type='integer', string="Total Applications"),
'manager_id': fields.related('department_id', 'manager_id', type='many2one', string='Department Manager', relation='hr.employee', readonly=True, store=True),
'alias_prefix': fields.char("Alias Name Prefix For Jobs",help="Default Prefix for Alias name of jobs"),
}

View File

@ -345,7 +345,7 @@
<field name="department_id"/>
<field name="no_of_recruitment"/>
<field name="color"/>
<field name="priority_count"/>
<field name="application_count"/>
<field name="no_of_hired_employee"/>
<field name="manager_id"/>
<field name="survey_id"/>
@ -383,8 +383,8 @@
<t t-if="record.state.raw_value == 'recruit'">
<div class="oe_application">
<a name="%(hr_job_applications)d" type="action" >
<div t-if="record.priority_count.value.total_application gt 1" ><t t-esc="Math.round(record.priority_count.value.total_application)"/> Applications</div>
<div t-if="record.priority_count.value.total_application lt 2" ><t t-esc="Math.round(record.priority_count.value.total_application)"/> Application</div>
<div t-if="record.application_count.value gt 1" ><t t-esc="record.application_count.value"/> Applications</div>
<div t-if="record.application_count.value lt 2" ><t t-esc="record.application_count.value"/> Application</div>
</a>
</div>
<div style="margin-top: 6px;color: #4c4c4c;"><t t-esc="Math.round(record.no_of_recruitment.raw_value)"/> Expected New Employees</div>