fix: Rename unread_since scope (#7267)

- This renames the unread_since scope to created_since, which more accurately describes what the scope returns.
- The EXTRACT(EPOCH FROM created_at) > (?) clause was also simplified and rewritten as created_at > ?, which is equivalent:
This commit is contained in:
Nic Hippenmeyer
2023-07-27 05:29:21 -04:00
committed by GitHub
parent a7bc855486
commit 65190422c4
2 changed files with 3 additions and 4 deletions

View File

@@ -166,11 +166,11 @@ class Conversation < ApplicationRecord
end
def unread_messages
messages.unread_since(agent_last_seen_at)
messages.created_since(agent_last_seen_at)
end
def unread_incoming_messages
messages.incoming.unread_since(agent_last_seen_at)
messages.incoming.created_since(agent_last_seen_at)
end
def push_event_data

View File

@@ -103,8 +103,7 @@ class Message < ApplicationRecord
store :external_source_ids, accessors: [:slack], coder: JSON, prefix: :external_source_id
# .succ is a hack to avoid https://makandracards.com/makandra/1057-why-two-ruby-time-objects-are-not-equal-although-they-appear-to-be
scope :unread_since, ->(datetime) { where('EXTRACT(EPOCH FROM created_at) > (?)', datetime.to_i.succ) }
scope :created_since, ->(datetime) { where('created_at > ?', datetime) }
scope :chat, -> { where.not(message_type: :activity).where(private: false) }
scope :non_activity_messages, -> { where.not(message_type: :activity).reorder('id desc') }
scope :today, -> { where("date_trunc('day', created_at) = ?", Date.current) }