diff --git a/odex25_base/system_dashboard_classic/models/config.py b/odex25_base/system_dashboard_classic/models/config.py index c3ce8935e..c557f3da5 100644 --- a/odex25_base/system_dashboard_classic/models/config.py +++ b/odex25_base/system_dashboard_classic/models/config.py @@ -74,6 +74,7 @@ class BaseDashboard(models.Model): relation = fields.Char( string='action_domain', ) + search_field = fields.Char(string='Search field', required=True, default='employee_id.user_id') def unlink_nodes(self): for rec in self: diff --git a/odex25_base/system_dashboard_classic/models/models.py b/odex25_base/system_dashboard_classic/models/models.py index bef86ad86..b4ebdc607 100644 --- a/odex25_base/system_dashboard_classic/models/models.py +++ b/odex25_base/system_dashboard_classic/models/models.py @@ -345,28 +345,34 @@ class SystemDashboard(models.Model): pass # service_action_domain.append('|') - if 'employee_id' in mod._fields and 'user_id' in mod._fields: - service_action_domain.append('|') - service_action_domain.append(('user_id', '=', user.id)) - service_action_domain.append(('employee_id.user_id', '=', user.id)) + if model.search_field: + service_action_domain.append((model.search_field, '=', user.id)) - if 'employee_id' in mod._fields: - service_action_domain.append(('employee_id.user_id', '=', user.id)) + #if 'employee_id' in mod._fields and 'user_id' in mod._fields: + # service_action_domain.append('|') + # service_action_domain.append(('user_id', '=', user.id)) + # service_action_domain.append(('employee_id.user_id', '=', user.id)) - if 'user_id' in mod._fields: - service_action_domain.append(('user_id', '=', user.id)) + #if 'employee_id' in mod._fields: + # service_action_domain.append(('employee_id.user_id', '=', user.id)) + + #if 'user_id' in mod._fields: + # service_action_domain.append(('user_id', '=', user.id)) # service_action_domain.append(('employee_id.user_id','=',user.id)) else: - if 'employee_id' in mod._fields and 'user_id' in mod._fields: - service_action_domain.append('|') - service_action_domain.append(('user_id', '=', user.id)) - service_action_domain.append(('employee_id.user_id', '=', user.id)) + if model.search_field: + service_action_domain.append((model.search_field, '=', user.id)) + + #if 'employee_id' in mod._fields and 'user_id' in mod._fields: + # service_action_domain.append('|') + # service_action_domain.append(('user_id', '=', user.id)) + # service_action_domain.append(('employee_id.user_id', '=', user.id)) # service_action_domain.append('|') - if 'employee_id' in mod._fields: - service_action_domain.append(('employee_id.user_id', '=', user.id)) - if 'user_id' in mod._fields: - service_action_domain.append(('user_id', '=', user.id)) + #if 'employee_id' in mod._fields: + # service_action_domain.append(('employee_id.user_id', '=', user.id)) + #if 'user_id' in mod._fields: + # service_action_domain.append(('user_id', '=', user.id)) # service_action_domain.append(('employee_id.user_id','=',user.id)) # value = self.env['ir.translation'].sudo().search([('source', '=', model.name)], limit=1).value values['cards'].append({ diff --git a/odex25_base/system_dashboard_classic/views/config.xml b/odex25_base/system_dashboard_classic/views/config.xml index 5f25d5dcc..f1ba10e3a 100644 --- a/odex25_base/system_dashboard_classic/views/config.xml +++ b/odex25_base/system_dashboard_classic/views/config.xml @@ -18,6 +18,7 @@ +