Class: SalesforceIntegration::SalesforceIntegrationLead

Inherits:
Object
  • Object
show all
Defined in:
lib/salesforceintegration.rb

Instance Method Summary collapse

Constructor Details

#initialize(salesforce_client_id, salesforce_client_secret, salesforce_url, salesforce_username, salesforce_password) ⇒ SalesforceIntegrationLead

Returns a new instance of SalesforceIntegrationLead.



9
10
11
12
13
14
15
# File 'lib/salesforceintegration.rb', line 9

def initialize(salesforce_client_id, salesforce_client_secret, salesforce_url, salesforce_username, salesforce_password)
  client = Databasedotcom::Client.new(:client_id => salesforce_client_id, :client_secret => salesforce_client_secret, :host => salesforce_url)
  client.authenticate(:username => salesforce_username, :password => salesforce_password)

  client.materialize("Lead")
  client.materialize("User")
end

Instance Method Details

#create_lead_on_salesforce(first_name, last_name, email, company, job_title, phone, website) ⇒ Object

TODO: Permitir associar a contas TODO: Validar campos



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/salesforceintegration.rb', line 19

def create_lead_on_salesforce(first_name, last_name, email, company, job_title, phone, website)
  lead = Lead.new

  #TODO: Nao esta claro ao que corresponde esse usuario no salesforce. Verificar
  user = User.first
  lead['OwnerId'] = user.Id

  lead['FirstName'] = first_name
  lead['LastName'] = last_name
  lead['Email'] = email
  lead['Company'] = company
  lead['Title'] = job_title
  lead['Phone'] = phone
  lead['Website'] = website
  lead['IsConverted'] = false
  lead['IsUnreadByOwner'] = true
  lead.save
  lead.Id
end