From e2ee16c058f5b7da3365bd58d5fd619c2711a807 Mon Sep 17 00:00:00 2001 From: Jared Kipe Date: Tue, 7 Jul 2020 15:02:08 -0700 Subject: [PATCH] [FIX] hr_payroll_attendance: unlink behavior for multi-worked-lines --- hr_payroll_attendance/models/hr_payslip.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hr_payroll_attendance/models/hr_payslip.py b/hr_payroll_attendance/models/hr_payslip.py index b41f9648..df811cf4 100755 --- a/hr_payroll_attendance/models/hr_payslip.py +++ b/hr_payroll_attendance/models/hr_payslip.py @@ -50,10 +50,10 @@ class HrPayslip(models.Model): work_data = self._pre_aggregate_attendance_data() processed_data = self.aggregate_overtime(work_data) - # TODO is it appropriate to remove all lines? Ideally we would only remove the old type. lines_to_keep = self.worked_days_line_ids.filtered(lambda x: x.work_entry_type_id not in types_to_remove) - work_lines_vals = [(5, 0, 0)] + [(4, line.id, False) for line in lines_to_keep] - # work_lines_vals = [(5, 0, 0)] + # Note that [(5, 0, 0)] + [(4, 999, 0)], will not work + work_lines_vals = [(3, line.id, False) for line in (self.worked_days_line_ids - lines_to_keep)] + work_lines_vals += [(4, line.id, False) for line in lines_to_keep] work_lines_vals += [(0, 0, { 'number_of_days': data[0], 'number_of_hours': data[1],