Class: SpreeCmCommissioner::Integrations::BookMeBusV1::Resources::Branch

Inherits:
Base
  • Object
show all
Defined in:
app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

from_json_api, from_json_api_item, from_json_api_single

Constructor Details

#initialize(attributes = {}) ⇒ Branch

Returns a new instance of Branch.



21
22
23
24
25
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 21

def initialize(attributes = {})
  super(attributes)

  @location = Location.new(attributes['location']) if attributes['location'].is_a?(Hash)
end

Instance Attribute Details

#addressObject

Returns the value of attribute address.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def address
  @address
end

#codeObject

Returns the value of attribute code.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def code
  @code
end

#descriptionObject

Returns the value of attribute description.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def description
  @description
end

#idObject

Returns the value of attribute id.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def id
  @id
end

#latObject

Returns the value of attribute lat.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def lat
  @lat
end

#locationObject

Returns the value of attribute location.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def location
  @location
end

#location_idObject

Returns the value of attribute location_id.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def location_id
  @location_id
end

#lonObject

Returns the value of attribute lon.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def lon
  @lon
end

#nameObject

Returns the value of attribute name.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def name
  @name
end

#operator_branch_idObject

Returns the value of attribute operator_branch_id.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def operator_branch_id
  @operator_branch_id
end

#operator_idObject

Returns the value of attribute operator_id.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def operator_id
  @operator_id
end

#phoneObject

Returns the value of attribute phone.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def phone
  @phone
end

#place_typeObject

Returns the value of attribute place_type.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def place_type
  @place_type
end

#sharedObject

Returns the value of attribute shared.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def shared
  @shared
end

#timezoneObject

Returns the value of attribute timezone.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def timezone
  @timezone
end

#typeObject

Returns the value of attribute type.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def type
  @type
end

#urlObject

Returns the value of attribute url.



3
4
5
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 3

def url
  @url
end

Instance Method Details

#latitudeObject



27
28
29
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 27

def latitude
  lat.to_f
end

#location_nameObject



35
36
37
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 35

def location_name
  location&.name
end

#longitudeObject



31
32
33
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 31

def longitude
  lon.to_f
end

#to_hObject



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 43

def to_h
  {
    id: id,
    type: type,
    code: code,
    name: name,
    lat: lat,
    lon: lon,
    description: description,
    timezone: timezone,
    url: url,
    place_type: place_type,
    shared: shared,
    operator_id: operator_id,
    operator_branch_id: operator_branch_id,
    location_id: location_id,
    address: address,
    phone: phone,
    location: location&.to_h
  }.compact
end

#vendor_place_typeObject



39
40
41
# File 'app/services/spree_cm_commissioner/integrations/book_me_bus_v1/resources/branch.rb', line 39

def vendor_place_type
  :branch
end