Вы не можете скрыть поле условно в виде дерева / списка, вы можете сделать его невидимым, но это должно быть исправлено для всех данных, а не условно.
Я не уверен, но вы можете добиться этого, используя невидимый контекст.
Пример:
<field name="department_id" invisible="context.get('invisible_department', True)"/>