From 337fc97e0d097bd90cc592a1c3f2b9301c1135ce Mon Sep 17 00:00:00 2001 From: Xavier Codinas Date: Wed, 19 Oct 2016 23:09:33 +0200 Subject: [PATCH] Add domain for employee end and start date issue4435 review29501002 --- line.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/line.py b/line.py index a72072b490..37a6a8373a 100644 --- a/line.py +++ b/line.py @@ -26,8 +26,16 @@ class Line(ModelSQL, ModelView): employee = fields.Many2One('company.employee', 'Employee', required=True, select=True, domain=[ ('company', '=', Eval('company', -1)), + ['OR', + ('start_date', '=', None), + ('start_date', '<=', Eval('date')), + ], + ['OR', + ('end_date', '=', None), + ('end_date', '>=', Eval('date')), + ], ], - depends=['company']) + depends=['company', 'date']) date = fields.Date('Date', required=True, select=True) duration = fields.TimeDelta('Duration', 'company_work_time', required=True) work = fields.Many2One('timesheet.work', 'Work', @@ -130,7 +138,18 @@ class EnterLinesStart(ModelView): 'Enter Lines' __name__ = 'timesheet.line.enter.start' employee = fields.Many2One('company.employee', 'Employee', required=True, - domain=[('company', '=', Eval('context', {}).get('company', -1))]) + domain=[ + ('company', '=', Eval('context', {}).get('company', -1)), + ['OR', + ('start_date', '=', None), + ('start_date', '<=', Eval('date')), + ], + ['OR', + ('end_date', '=', None), + ('end_date', '>=', Eval('date')), + ], + ], + depends=['date']) date = fields.Date('Date', required=True) @staticmethod