Sha256: 7818fe8cdfdf6184fee3739e3b07f6374da97beceabd897c8c0789e715322b5c

Contents?: true

Size: 747 Bytes

Versions: 28

Compression:

Stored size: 747 Bytes

Contents

require_dependency "renalware/hospitals"

module Renalware
  module Hospitals
    class Centre < ApplicationRecord
      has_many :units, class_name: "Hospitals::Unit", foreign_key: :hospital_centre_id

      scope :ordered, -> { order(:name) }
      scope :active, -> { where(active: true) }
      scope :performing_transplant, -> { active.where(is_transplant_site: true) }
      scope :with_hd_sites, -> { where(id: Unit.hd_sites.pluck(:hospital_centre_id)) }

      validates :code, presence: true
      validates :name, presence: true

      def hd_sites
        units.hd_sites.ordered
      end

      def to_s
        if location.present?
          "#{name} (#{location})"
        else
          name
        end
      end
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
renalware-core-2.0.0.pre.beta11 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta10 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta9 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta8 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta7 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta6 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta5 app/models/renalware/hospitals/centre.rb
renalware-core-2.0.0.pre.beta4 app/models/renalware/hospitals/centre.rb