Initial commit: Hr packages

This commit is contained in:
Ernad Husremovic 2025-08-29 15:20:50 +02:00
commit 62531cd146
2820 changed files with 1432848 additions and 0 deletions

View file

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo noupdate="1">
<record model="ir.module.category" id="base.module_category_human_resources_recruitment">
<field name="description">The user interacting with the application as interviewer don't need any specific access. They'll have access thanks to their interviewer assignation.</field>
<field name="sequence">11</field>
</record>
<record id="hr_applicant_comp_rule" model="ir.rule">
<field name="name">Applicant multi company rule</field>
<field name="model_id" ref="model_hr_applicant"/>
<field eval="True" name="global"/>
<field name="domain_force">[('company_id', 'in', company_ids + [False])]</field>
</record>
<record id="group_hr_recruitment_interviewer" model="res.groups">
<field name="name">Recruitment Interviewer</field>
<field name="category_id" ref="base.module_category_hidden"/>
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
</record>
<record id="group_hr_recruitment_user" model="res.groups">
<field name="name">Officer : Manage all applicants</field>
<field name="category_id" ref="base.module_category_human_resources_recruitment"/>
<field name="implied_ids" eval="[(4, ref('hr.group_hr_user'))]"/>
</record>
<record id="group_hr_recruitment_manager" model="res.groups">
<field name="name">Administrator</field>
<field name="category_id" ref="base.module_category_human_resources_recruitment"/>
<field name="implied_ids" eval="[(4, ref('group_hr_recruitment_user'))]"/>
<field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]"/>
</record>
<record id="base.default_user" model="res.users">
<field name="groups_id" eval="[(4,ref('hr_recruitment.group_hr_recruitment_manager'))]"/>
</record>
<record id="group_applicant_cv_display" model="res.groups">
<field name="name">Display CV on application form</field>
<field name="category_id" ref="base.module_category_hidden"/>
</record>
<record id="base.group_user" model="res.groups">
<field name="implied_ids" eval="[(4, ref('hr_recruitment.group_applicant_cv_display'))]"/>
</record>
<!-- Interviewer Access Rules -->
<record id="hr_applicant_interviewer_rule" model="ir.rule">
<field name="name">Applicant Interviewer</field>
<field name="model_id" ref="model_hr_applicant"/>
<field name="domain_force">[
'|',
('job_id.interviewer_ids', 'in', user.id),
('interviewer_ids', 'in', user.id),
]</field>
<field name="perm_create" eval="False"/>
<field name="perm_unlink" eval="False"/>
<field name="groups" eval="[(4, ref('hr_recruitment.group_hr_recruitment_interviewer'))]"/>
</record>
<record id="mail_message_interviewer_rule" model="ir.rule">
<field name="name">Interviewer: No Applicant Chatter</field>
<field name="model_id" ref="mail.model_mail_message"/>
<field name="domain_force">[
'|',
('model', '!=', 'hr.applicant'),
'&amp;',
('model', '=', 'hr.applicant'),
('mail_activity_type_id', '!=', False)
]</field>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_unlink" eval="False"/>
<field name="groups" eval="[(4, ref('hr_recruitment.group_hr_recruitment_interviewer'))]"/>
</record>
</odoo>

View file

@ -0,0 +1,21 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_hr_job_interviewer,hr.job.interviewer,hr.model_hr_job,group_hr_recruitment_interviewer,1,0,0,0
access_hr_applicant_interviewer,hr.applicant.interviewer,model_hr_applicant,group_hr_recruitment_interviewer,1,1,0,0
access_hr_applicant_user,hr.applicant.user,model_hr_applicant,group_hr_recruitment_user,1,1,1,1
access_hr_recruitment_stage_interviewer,hr.recruitment.stage.interviewer,model_hr_recruitment_stage,group_hr_recruitment_interviewer,1,0,0,0
access_hr_recruitment_stage_user,hr.recruitment.stage.user,model_hr_recruitment_stage,group_hr_recruitment_user,1,0,0,0
access_hr_recruitment_stage_manager,hr.recruitment.stage.manager,model_hr_recruitment_stage,group_hr_recruitment_manager,1,1,1,1
access_hr_recruitment_degree,hr.recruitment.degree,model_hr_recruitment_degree,group_hr_recruitment_user,1,1,1,1
access_hr_recruitment_refuse_reason_interviewer,hr.applicant.refuse.reason.interviewer,model_hr_applicant_refuse_reason,group_hr_recruitment_interviewer,1,0,0,0
access_hr_recruitment_refuse_reason,hr.applicant.refuse.reason,model_hr_applicant_refuse_reason,group_hr_recruitment_user,1,1,1,1
access_res_partner_hr_user,res.partner.user,base.model_res_partner,group_hr_recruitment_user,1,1,1,1
access_calendar_event_hruser,calendar.event.hruser,calendar.model_calendar_event,group_hr_recruitment_user,1,1,1,1
access_hr_recruitment_source_hr_officer,hr.recruitment.source,model_hr_recruitment_source,group_hr_recruitment_user,1,1,1,1
access_hr_recruitment_source_all,hr.recruitment.source,model_hr_recruitment_source,,1,0,0,0
access_hr_applicant_category,hr.applicant_category,model_hr_applicant_category,,1,1,1,0
access_hr_applicant_category_manager,hr.applicant_category,model_hr_applicant_category,group_hr_recruitment_user,1,1,1,1
access_calendar_event_type_hr_officer,calendar.event.type.officer,calendar.model_calendar_event_type,group_hr_recruitment_user,1,1,1,0
access_applicant_get_refuse_reason,access.applicant.get.refuse.reason,model_applicant_get_refuse_reason,hr_recruitment.group_hr_recruitment_user,1,1,1,0
access_applicant_get_refuse_reason_interviewer,access.applicant.get.refuse.reason.interviewer,model_applicant_get_refuse_reason,hr_recruitment.group_hr_recruitment_interviewer,1,1,1,0
access_applicant_send_mail,access.applicant.send.mail,model_applicant_send_mail,hr_recruitment.group_hr_recruitment_user,1,1,1,0
access_applicant_send_mail_interviewer,access.applicant.send.mail.interviewer,model_applicant_send_mail,hr_recruitment.group_hr_recruitment_interviewer,1,1,1,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_hr_job_interviewer hr.job.interviewer hr.model_hr_job group_hr_recruitment_interviewer 1 0 0 0
3 access_hr_applicant_interviewer hr.applicant.interviewer model_hr_applicant group_hr_recruitment_interviewer 1 1 0 0
4 access_hr_applicant_user hr.applicant.user model_hr_applicant group_hr_recruitment_user 1 1 1 1
5 access_hr_recruitment_stage_interviewer hr.recruitment.stage.interviewer model_hr_recruitment_stage group_hr_recruitment_interviewer 1 0 0 0
6 access_hr_recruitment_stage_user hr.recruitment.stage.user model_hr_recruitment_stage group_hr_recruitment_user 1 0 0 0
7 access_hr_recruitment_stage_manager hr.recruitment.stage.manager model_hr_recruitment_stage group_hr_recruitment_manager 1 1 1 1
8 access_hr_recruitment_degree hr.recruitment.degree model_hr_recruitment_degree group_hr_recruitment_user 1 1 1 1
9 access_hr_recruitment_refuse_reason_interviewer hr.applicant.refuse.reason.interviewer model_hr_applicant_refuse_reason group_hr_recruitment_interviewer 1 0 0 0
10 access_hr_recruitment_refuse_reason hr.applicant.refuse.reason model_hr_applicant_refuse_reason group_hr_recruitment_user 1 1 1 1
11 access_res_partner_hr_user res.partner.user base.model_res_partner group_hr_recruitment_user 1 1 1 1
12 access_calendar_event_hruser calendar.event.hruser calendar.model_calendar_event group_hr_recruitment_user 1 1 1 1
13 access_hr_recruitment_source_hr_officer hr.recruitment.source model_hr_recruitment_source group_hr_recruitment_user 1 1 1 1
14 access_hr_recruitment_source_all hr.recruitment.source model_hr_recruitment_source 1 0 0 0
15 access_hr_applicant_category hr.applicant_category model_hr_applicant_category 1 1 1 0
16 access_hr_applicant_category_manager hr.applicant_category model_hr_applicant_category group_hr_recruitment_user 1 1 1 1
17 access_calendar_event_type_hr_officer calendar.event.type.officer calendar.model_calendar_event_type group_hr_recruitment_user 1 1 1 0
18 access_applicant_get_refuse_reason access.applicant.get.refuse.reason model_applicant_get_refuse_reason hr_recruitment.group_hr_recruitment_user 1 1 1 0
19 access_applicant_get_refuse_reason_interviewer access.applicant.get.refuse.reason.interviewer model_applicant_get_refuse_reason hr_recruitment.group_hr_recruitment_interviewer 1 1 1 0
20 access_applicant_send_mail access.applicant.send.mail model_applicant_send_mail hr_recruitment.group_hr_recruitment_user 1 1 1 0
21 access_applicant_send_mail_interviewer access.applicant.send.mail.interviewer model_applicant_send_mail hr_recruitment.group_hr_recruitment_interviewer 1 1 1 0