[FIX] hr_holidays: fix validation of the number of days

The validation of leaves was broken because it relies on a check on the
remaining days.  The problem is that the latter uses an old-api function field
that is not recomputed yet at the time of the validation.  The fix consists in
using a non-computed field instead.
This commit is contained in:
Raphael Collet 2015-01-08 12:58:14 +01:00
parent 6c78541978
commit 4fb9c8f0dc
1 changed files with 6 additions and 6 deletions

View File

@ -46,15 +46,15 @@ class hr_holidays_status(osv.osv):
for holiday in self.pool['hr.holidays'].browse(cr, uid, holiday_ids, context=context):
status_dict = result[holiday.holiday_status_id.id]
if holiday.type == 'add':
status_dict['virtual_remaining_leaves'] += holiday.number_of_days
status_dict['virtual_remaining_leaves'] += holiday.number_of_days_temp
if holiday.state == 'validate':
status_dict['max_leaves'] += holiday.number_of_days
status_dict['remaining_leaves'] += holiday.number_of_days
status_dict['max_leaves'] += holiday.number_of_days_temp
status_dict['remaining_leaves'] += holiday.number_of_days_temp
elif holiday.type == 'remove': # number of days is negative
status_dict['virtual_remaining_leaves'] += holiday.number_of_days
status_dict['virtual_remaining_leaves'] -= holiday.number_of_days_temp
if holiday.state == 'validate':
status_dict['leaves_taken'] -= holiday.number_of_days
status_dict['remaining_leaves'] += holiday.number_of_days
status_dict['leaves_taken'] += holiday.number_of_days_temp
status_dict['remaining_leaves'] -= holiday.number_of_days_temp
return result
def _user_left_days(self, cr, uid, ids, name, args, context=None):