summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--addons/hr_payroll/models/hr_payslip.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/addons/hr_payroll/models/hr_payslip.py b/addons/hr_payroll/models/hr_payslip.py
index 3aaa01910ee..fdf93d99951 100644
--- a/addons/hr_payroll/models/hr_payslip.py
+++ b/addons/hr_payroll/models/hr_payslip.py
@@ -311,7 +311,10 @@ class HrPayslip(models.Model):
baselocaldict = {'categories': categories, 'rules': rules, 'payslip': payslips, 'worked_days': worked_days, 'inputs': inputs}
#get the ids of the structures on the contracts and their parent id as well
contracts = self.env['hr.contract'].browse(contract_ids)
- structure_ids = contracts.get_all_structures()
+ if len(contracts) == 1 and payslip.struct_id:
+ structure_ids = list(set(payslip.struct_id._get_parent_structure().ids))
+ else:
+ structure_ids = contracts.get_all_structures()
#get the rules of the structure and thier children
rule_ids = self.env['hr.payroll.structure'].browse(structure_ids).get_all_rules()
#run the rules by sequence