Class: Pacbio::Request

Inherits:
ApplicationRecord show all
Includes:
Aliquotable, TubeMaterial, WellMaterial
Defined in:
app/models/pacbio/request.rb

Overview

Pacbio::Request A request can have many libraries

Instance Method Summary collapse

Methods included from Aliquotable

#used_aliquots_volume

Methods included from Material

#container=

Instance Method Details

#containerObject



37
38
39
# File 'app/models/pacbio/request.rb', line 37

def container
  tube || well
end

#generate_primary_aliquotObject

While this aliquot is not volume tracked we can just create it with empty data



29
30
31
32
33
34
35
# File 'app/models/pacbio/request.rb', line 29

def generate_primary_aliquot
  Aliquot.create!(
    source: self,
    aliquot_type: :primary,
    state: :created
  )
end

#sequencing_platesObject



45
46
47
# File 'app/models/pacbio/request.rb', line 45

def sequencing_plates
  libraries.collect(&:sequencing_plates).flatten.uniq
end

#sequencing_runsArray

Returns of Runs that the request is used in.

Returns:

  • (Array)

    of Runs that the request is used in



50
51
52
# File 'app/models/pacbio/request.rb', line 50

def sequencing_runs
  libraries.collect(&:sequencing_plates).flatten.collect(&:run).uniq
end

#source_identifierObject



41
42
43
# File 'app/models/pacbio/request.rb', line 41

def source_identifier
  container&.identifier
end