diff --git a/app/builders/v2/report_builder.rb b/app/builders/v2/report_builder.rb index b786ba25c..b5fb8045b 100644 --- a/app/builders/v2/report_builder.rb +++ b/app/builders/v2/report_builder.rb @@ -96,10 +96,9 @@ class V2::ReportBuilder def conversations @open_conversations = scope.conversations.where(account_id: @account.id).open - first_response_count = @account.reporting_events.where(name: 'first_response', conversation_id: @open_conversations.pluck('id')).count metric = { open: @open_conversations.count, - unattended: @open_conversations.count - first_response_count + unattended: @open_conversations.unattended.count } metric[:unassigned] = @open_conversations.unassigned.count if params[:type].equal?(:account) metric diff --git a/app/finders/conversation_finder.rb b/app/finders/conversation_finder.rb index cadbb4644..5ac056931 100644 --- a/app/finders/conversation_finder.rb +++ b/app/finders/conversation_finder.rb @@ -102,7 +102,7 @@ class ConversationFinder when 'participating' @conversations = current_user.participating_conversations.where(account_id: current_account.id) when 'unattended' - @conversations = @conversations.where(first_reply_created_at: nil) + @conversations = @conversations.unattended end @conversations end diff --git a/app/models/conversation.rb b/app/models/conversation.rb index 668d96d52..8bc23a174 100644 --- a/app/models/conversation.rb +++ b/app/models/conversation.rb @@ -69,6 +69,7 @@ class Conversation < ApplicationRecord scope :unassigned, -> { where(assignee_id: nil) } scope :assigned, -> { where.not(assignee_id: nil) } scope :assigned_to, ->(agent) { where(assignee_id: agent.id) } + scope :unattended, -> { where(first_reply_created_at: nil) } scope :resolvable, lambda { |auto_resolve_duration| return none if auto_resolve_duration.to_i.zero?