[FIX] hr_holidays: make action_approve really work in batch

This commit is contained in:
Thibault Delavallée
2017-11-29 11:19:19 +01:00
parent adf27adc15
commit cf32a1d202
+5 -7
View File
@@ -434,14 +434,12 @@ class Holidays(models.Model):
self._check_security_action_approve()
current_employee = self.env['hr.employee'].search([('user_id', '=', self.env.uid)], limit=1)
for holiday in self:
if holiday.state != 'confirm':
raise UserError(_('Leave request must be confirmed ("To Approve") in order to approve it.'))
if any(holiday.state != 'confirm' for holiday in self):
raise UserError(_('Leave request must be confirmed ("To Approve") in order to approve it.'))
if holiday.double_validation:
return holiday.write({'state': 'validate1', 'first_approver_id': current_employee.id})
else:
holiday.action_validate()
self.filtered(lambda hol: hol.double_validation).write({'state': 'validate1', 'first_approver_id': current_employee.id})
self.filtered(lambda hol: not hol.double_validation).action_validate()
return True
@api.multi
def _prepare_create_by_category(self, employee):