|
|
for team in self:
domain = [('maintenance_team_id', '=', team.id), ('state', 'not in', ['done', 'cancelled'])]
team.todo_request_ids = self.env['maintenance.request'].search(domain)
data = self.env['maintenance.request']._read_group(domain, ['schedule_date:year', 'priority', 'state'], ['__count'])
team.todo_request_count = sum(count for (_, _, _, count) in data)
team.todo_request_count_date = sum(count for (schedule_date, _, _, count) in data if schedule_date)
team.todo_request_count_high_priority = sum(count for (_, priority, _, count) in data if priority == '3')
team.todo_request_count_changes_requested = sum(count for (_, _, state, count) in data if state == 'changes_requested')
team.todo_request_count_unscheduled = team.todo_request_count - team.todo_request_count_date
|
|