Class: Ecoportal::API::GraphQL::Base::Page::DataField::ContractorEntities

Inherits:
DataField
  • Object
show all
Defined in:
lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb

Overview

Contractor entity selector field. Stores references to ContractorEntity records.

Instance Method Summary collapse

Instance Method Details

#as_inputObject



21
22
23
24
25
# File 'lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb', line 21

def as_input
  return nil unless dirty?

  { contractorEntities: { id: id, contractorEntityIds: contractor_entity_ids } }
end

#contractor_entity_idsObject



8
9
10
# File 'lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb', line 8

def contractor_entity_ids
  Array(contractors).map { |c| c.is_a?(Hash) ? c['id'] : c }.compact
end

#contractor_entity_ids=(ids) ⇒ Object



12
13
14
# File 'lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb', line 12

def contractor_entity_ids=(ids)
  doc['contractors'] = Array(ids).map { |id_val| { 'id' => id_val } }
end

#value=(ids) ⇒ Object

v2 compat alias



17
18
19
# File 'lib/ecoportal/api/graphql/base/page/data_field/contractor_entities.rb', line 17

def value=(ids)
  self.contractor_entity_ids = ids
end