[MERGE]Merge with some changes

bzr revid: vja@tinyerp.com-20130404052244-rg87y0gsufban2te
This commit is contained in:
Vishmita Jadeja (openerp) 2013-04-04 10:52:44 +05:30
commit 5eb07f640a
5 changed files with 70 additions and 3 deletions

View File

@ -118,6 +118,7 @@ class hr_job(osv.osv):
'company_id': fields.many2one('res.company', 'Company'),
'state': fields.selection([('open', 'No Recruitment'), ('recruit', 'Recruitement in Progress')], 'Status', readonly=True, required=True,
help="By default 'In position', set it to 'In Recruitment' if recruitment process is going on for this job position."),
'color': fields.integer('Color Index'),
}
_defaults = {
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'hr.job', context=c),

View File

@ -31,11 +31,13 @@
<record id="job_ceo" model="hr.job">
<field name="name">Chief Executive Officer</field>
<field name="department_id" ref="dep_management"/>
<field name="color">3</field>
</record>
<record id="job_cto" model="hr.job">
<field name="name">Chief Technical Officer</field>
<field name="department_id" ref="dep_rd"/>
<field name="color">5</field>
</record>
<record id="job_consultant" model="hr.job">
@ -46,6 +48,7 @@
<record id="job_developer" model="hr.job">
<field name="name">Developer</field>
<field name="department_id" ref="dep_rd"/>
<field name="color">2</field>
</record>
<record id="job_hrm" model="hr.job">

View File

@ -492,11 +492,53 @@ class hr_job(osv.osv):
_inherit = "hr.job"
_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)
"""
res = {}
for position in self.browse(cr, uid,ids, context=context):
res[position.id] = {}
priority1 = 0
priority2 = 0
priority3 = 0
applicant_obj = self.pool.get('hr.applicant')
rate_ids = applicant_obj.search(cr, uid, [('job_id', '=', position.id)], context=context)
for applicant in self.pool.get('hr.applicant').browse(cr, uid, rate_ids, context=context):
if applicant.job_id.id == position.id:
if applicant.priority == '3':
priority1 += 1
elif applicant.priority == '2':
priority2 += 1
elif applicant.priority == '1':
priority3 += 1
else:
pass
res[position.id] = {'priority1': priority1, 'priority2': priority2, 'priority3': priority3}
return res
def _get_department_mgr(self, cr, uid, ids, name, args, context=None):
"""get manager image for specific job position.
"""
res = {}
employee_obj = self.pool.get('hr.employee')
for obj_job in self.browse(cr, uid,ids, context=context):
res[obj_job.id] = {}
if obj_job.department_id:
emp_ids = employee_obj.search(cr, uid, [('id', '=', obj_job.department_id.manager_id.id)], context=context)
if emp_ids:
for employee in employee_obj.browse(cr, uid, emp_ids, context=context):
res[obj_job.id] = {'id':employee.id, 'name': employee.name}
return res
_columns = {
'survey_id': fields.many2one('survey', 'Interview Form', help="Choose an interview form for this job position and you will be able to print/answer this interview from all applicants who apply for this job"),
'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"),
'user_id': fields.function(_get_department_mgr, string='Department Manager', type="char"),#manager image in kanban
}
_defaults = {
'alias_domain': False, # always hide alias during creation

View File

@ -59,7 +59,7 @@
sequence="1"/>
<!-- ALL JOBS REQUESTS -->
<menuitem parent="base.menu_crm_case_job_req_main" id="hr.menu_hr_job_position" action="hr.action_hr_job" sequence="1"/>
<menuitem parent="base.menu_crm_case_job_req_main" id="hr.menu_hr_job_position" action="action_hr_job" sequence="1"/>
<menuitem
name="Applications"
parent="base.menu_crm_case_job_req_main"

View File

@ -337,11 +337,14 @@
<field name="name"/>
<field name="department_id"/>
<field name="no_of_recruitment"/>
<field name="color"/>
<field name="priority_count"/>
<field name="user_id"/>
<field name="no_of_employee"/>
<field name="message_summary"/>
<templates>
<t t-name="kanban-box">
<div t-attf-class=" oe_kanban_card oe_semantic_html_override oe_kanban_survey oe_kanban_global_click">
<div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_semantic_html_override oe_kanban_global_click">
<div class="oe_dropdown_toggle oe_dropdown_kanban">
<span class="oe_e">í</span>
<ul class="oe_dropdown_menu">
@ -354,12 +357,30 @@
<b><field name="name"/></b>
<div><field name="department_id"/></div>
<br/>
<div class="oe_kanban_right"><img t-att-src="kanban_image('hr.employee', 'image_small', widget.values.user_id.value.id)" t-att-title="record.user_id.value.name" width="24" height="24" class="oe_kanban_avatar"/></div><br />
<div><t t-esc="Math.round(record.no_of_recruitment.raw_value)"/> Expected in Recruitment</div>
<div><a t-if="record.no_of_employee.raw_value" name="%(crm_case_categ0_act_job_application)d" type="action" >
<span t-if="record.no_of_employee.raw_value gt 1"><t t-esc="Math.round(record.no_of_employee.raw_value)"/> Applications</span>
<span t-if="record.no_of_employee.raw_value lt 2"><t t-esc="Math.round(record.no_of_employee.raw_value)"/> Application</span>
</a>
<div class="oe_kanban_footer_left" style="margin-top:5px;"><t t-raw="record.message_summary.raw_value"/></div></div>
<div>
<a><t t-esc="widget.values.priority_count.value.priority1"/></a>
<span title="Excellent">
<img t-attf-src="/web/static/src/img/icons/star-on.png" width="16" height="16" />
<img t-attf-src="/web/static/src/img/icons/star-on.png" width="16" height="16" />
<img t-attf-src="/web/static/src/img/icons/star-on.png" width="16" height="16" />
</span><br />
<a><t t-esc="widget.values.priority_count.value.priority2"/></a>
<span title="Very Good">
<img t-attf-src="/web/static/src/img/icons/star-on.png" width="16" height="16" />
<img t-attf-src="/web/static/src/img/icons/star-on.png" width="16" height="16" />
</span><br />
<a><t t-esc="widget.values.priority_count.value.priority3"/></a>
<span title="Good">
<img t-attf-src="/web/static/src/img/icons/star-on.png" width="16" height="16" />
</span>
</div>
</div>
</div>
</t>
@ -369,7 +390,7 @@
</record>
<!-- hr related job position menu action -->
<record model="ir.actions.act_window" id="hr.action_hr_job">
<record model="ir.actions.act_window" id="action_hr_job">
<field name="name">Job Positions</field>
<field name="res_model">hr.job</field>
<field name="view_type">form</field>