Remove source_id as primary key for contact
This commit is contained in:
parent
df5c9de87e
commit
beda21b84c
3 changed files with 13 additions and 5 deletions
|
@ -41,9 +41,13 @@ Assumptions
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def contact
|
||||||
|
@contact ||= @inbox.contacts.find_by(source_id: @sender_id)
|
||||||
|
end
|
||||||
|
|
||||||
def build_contact
|
def build_contact
|
||||||
if !@inbox.contacts.exists?(source_id: @sender_id)
|
if contact.nil?
|
||||||
contact = @inbox.contacts.create!(contact_params)
|
@contact = @inbox.contacts.create!(contact_params)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -99,7 +103,7 @@ Assumptions
|
||||||
{
|
{
|
||||||
account_id: @inbox.account_id,
|
account_id: @inbox.account_id,
|
||||||
inbox_id: @inbox.id,
|
inbox_id: @inbox.id,
|
||||||
sender_id: @sender_id
|
sender_id: contact.id
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ class Conversation < ApplicationRecord
|
||||||
belongs_to :account
|
belongs_to :account
|
||||||
belongs_to :inbox
|
belongs_to :inbox
|
||||||
belongs_to :assignee, class_name: 'User', optional: true
|
belongs_to :assignee, class_name: 'User', optional: true
|
||||||
belongs_to :sender, class_name: 'Contact', primary_key: :source_id
|
belongs_to :sender, class_name: 'Contact'
|
||||||
|
|
||||||
has_many :messages, dependent: :destroy, autosave: true
|
has_many :messages, dependent: :destroy, autosave: true
|
||||||
|
|
||||||
|
|
|
@ -14,8 +14,12 @@ class Integrations::Facebook::DeliveryStatus
|
||||||
@params.sender['id']
|
@params.sender['id']
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def contact_id
|
||||||
|
@contact ||= ::Contact.find_by(source_id: sender_id)
|
||||||
|
end
|
||||||
|
|
||||||
def conversation
|
def conversation
|
||||||
@conversation ||= Conversation.find_by(sender_id: sender_id)
|
@conversation ||= ::Conversation.find_by(sender_id: contact_id)
|
||||||
end
|
end
|
||||||
|
|
||||||
def update_message_status
|
def update_message_status
|
||||||
|
|
Loading…
Reference in a new issue