Merge pull request #5403 from expsa/feature/hr-branch-correct-paths-20251113-144806

feat: enhance HR branch display with correct paths and tree/search views
This commit is contained in:
Mohamed Eltayar 2025-11-13 14:51:19 +03:00 committed by GitHub
commit 6aad0c3752
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 41 additions and 2 deletions

View File

@ -23,6 +23,18 @@ class HrDepartment(models.Model):
branch_name = fields.Many2one('hr.department',domain=[("is_branch","=",True)])
def name_get(self):
result = []
for department in self:
# إذا كان السياق من branch_name field أو طلب عرض مختصر
if self.env.context.get('from_branch_field') or self.env.context.get('show_branch_short'):
name = department.name # الاسم فقط بدون مسار
else:
# العرض الافتراضي (مع المسار الهرمي)
name = super(HrDepartment, department).name_get()[0][1]
result.append((department.id, name))
return result
@api.depends('is_branch','parent_id')
def get_is_branch(self):
"""To know which unit or department belongs to a specific branch"""

View File

@ -73,7 +73,7 @@
attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="department_id" required="True" string="Department"
attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="branch_name" string="Branch Name" invisible="1" readonly="1"/>
<field name="branch_name" string="Branch Name" invisible="1" readonly="1" context="{'show_branch_short': True}"/>
<field name="job_id" required="True" string="Job Position"
attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="parent_id" attrs="{'readonly':[('state','!=','draft')]}"/>
@ -566,7 +566,7 @@
<field name="email_manager"/>
<field name="department_type" required="1"/>
<field name="is_branch" string="Is Branch?"/>
<field name="branch_name" string="Branch Name" context="{'hierarchical_naming': False}"/>
<field name="branch_name" string="Branch Name" context="{'show_branch_short': True}"/>
</xpath>
<xpath expr="//field[@name='name']" position="after">
<label for="english_name" class="oe_edit_only"/>
@ -595,6 +595,33 @@
</field>
</record>
<!-- hr_department tree view inherit -->
<record id="view_hr_department_tree_inherit" model="ir.ui.view">
<field name="name">hr.department.tree.inherit</field>
<field name="model">hr.department</field>
<field name="inherit_id" ref="hr.view_department_tree"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='name']" position="after">
<field name="branch_name" string="Branch" context="{'show_branch_short': True}"/>
</xpath>
</field>
</record>
<!-- hr_department search view inherit -->
<record id="view_hr_department_search_inherit" model="ir.ui.view">
<field name="name">hr.department.search.inherit</field>
<field name="model">hr.department</field>
<field name="inherit_id" ref="hr.view_department_filter"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='name']" position="after">
<field name="branch_name" string="Branch" context="{'show_branch_short': True}"/>
</xpath>
<xpath expr="//group" position="inside">
<filter string="Branch" name="group_branch" context="{'group_by':'branch_name', 'show_branch_short': True}"/>
</xpath>
</field>
</record>
<record id="hr_calendar_view_form_inherit" model="ir.ui.view">
<field name="name">resource.calendar.form.inherit</field>
<field name="model">resource.calendar</field>