Class: ArtemisApi::Batch

Inherits:
Model
  • Object
show all
Defined in:
lib/artemis_api/batch.rb

Instance Attribute Summary

Attributes inherited from Model

#attributes, #client, #id, #included, #relationships

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Model

#initialize, #inspect, instance_for, json_type, #method_missing, related_to_many, related_to_one, relationships, #respond_to_missing?

Constructor Details

This class inherits a constructor from ArtemisApi::Model

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class ArtemisApi::Model

Class Method Details

.find(id:, client:, facility_id:, include: nil, force: false) ⇒ Object



10
11
12
# File 'lib/artemis_api/batch.rb', line 10

def self.find(id:, client:, facility_id:, include: nil, force: false)
  client.find_one(self.json_type, id, facility_id: facility_id, include: include, force: force)
end

.find_all(client:, facility_id:, include: nil, filters: nil, page: nil) ⇒ Object



14
15
16
# File 'lib/artemis_api/batch.rb', line 14

def self.find_all(client:, facility_id:, include: nil, filters: nil, page: nil)
  client.find_all(self.json_type, facility_id: facility_id, include: include, filters: filters, page: page)
end

Instance Method Details

#completion(completion_id, include: nil) ⇒ Object



25
26
27
28
29
30
# File 'lib/artemis_api/batch.rb', line 25

def completion(completion_id, include: nil)
  ArtemisApi::Completion.find(id: completion_id,
                              facility_id: facility_id,
                              client: client,
                              include: include)
end

#completions(include: nil, filters: {}) ⇒ Object



18
19
20
21
22
23
# File 'lib/artemis_api/batch.rb', line 18

def completions(include: nil, filters: {})
  ArtemisApi::Completion.find_all(facility_id: facility_id,
                                  client: client,
                                  include: include,
                                  filters: {crop_batch_ids: [id]}.with_indifferent_access.merge(filters))
end

#discard(discard_id, include: nil) ⇒ Object



39
40
41
42
43
44
# File 'lib/artemis_api/batch.rb', line 39

def discard(discard_id, include: nil)
  ArtemisApi::Discard.find(id: discard_id,
                           facility_id: facility_id,
                           client: client,
                           include: include)
end

#discards(include: nil) ⇒ Object



32
33
34
35
36
37
# File 'lib/artemis_api/batch.rb', line 32

def discards(include: nil)
  ArtemisApi::Discard.find_all(facility_id: facility_id,
                               client: client,
                               include: include,
                               filters: {crop_batch_ids: [id]})
end

#harvest(harvest_id, include: nil) ⇒ Object



53
54
55
56
57
58
# File 'lib/artemis_api/batch.rb', line 53

def harvest(harvest_id, include: nil)
  ArtemisApi::Harvest.find(id: harvest_id,
                           facility_id: facility_id,
                           client: client,
                           include: include)
end

#harvests(include: nil) ⇒ Object



46
47
48
49
50
51
# File 'lib/artemis_api/batch.rb', line 46

def harvests(include: nil)
  ArtemisApi::Harvest.find_all(facility_id: facility_id,
                               client: client,
                               include: include,
                               filters: {crop_batch_ids: [id]})
end

#items(seeding_unit_id: nil, include: nil) ⇒ Object



60
61
62
63
64
65
66
# File 'lib/artemis_api/batch.rb', line 60

def items(seeding_unit_id: nil, include: nil)
  ArtemisApi::Item.find_all(facility_id: facility_id,
                            batch_id: id,
                            client: client,
                            include: include,
                            filters: {seeding_unit_id: seeding_unit_id})
end