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



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

def container
  tube || well
end

#generate_primary_aliquotObject

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



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

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

#sequencing_platesObject



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

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



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

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

#source_identifierObject



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

def source_identifier
  container&.identifier
end