Sha256: ed4af504e8595618a84594b1666386163c4a9071a62f1d0f0adcc4998d533dfd

Contents?: true

Size: 1.33 KB

Versions: 77

Compression:

Stored size: 1.33 KB

Contents

# frozen_string_literal: true

require_dependency "renalware/transplants"
require "document/base"

module Renalware
  module Transplants
    class DonorOperation < ApplicationRecord
      include Document::Base
      include PatientScope
      extend Enumerize

      belongs_to :patient, touch: true
      has_one :followup,
              class_name: "DonorFollowup",
              foreign_key: "operation_id",
              dependent: :restrict_with_exception

      scope :ordered, -> { order(performed_on: :asc) }
      scope :reversed, -> { order(performed_on: :desc) }

      has_paper_trail class_name: "Renalware::Transplants::Version",
                      on: [:create, :update, :destroy]
      has_document class_name: "Renalware::Transplants::DonorOperationDocument"

      enumerize :kidney_side, in: %i(left right both)
      enumerize :operating_surgeon, in: %i(consultant fellow_senior_registrar other)
      enumerize :anaesthetist, in: %i(consultant fellow_senior_registrar other)
      enumerize :nephrectomy_type, in: %i(
        open_transperitoneal open_loin_with_resection open_loin_without_resection
        open_extraperitoneal laparoscropic_intra laparoscropic_extra other
      )
      enumerize :donor_splenectomy_peri_or_post_operatively, in: %i(yes no unknown)

      validates :performed_on, presence: true
    end
  end
end

Version data entries

77 entries across 77 versions & 1 rubygems

Version Path
renalware-core-2.0.148 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.147 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.146 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.145 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.144 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.143 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.142 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.141 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.140 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.139 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.138 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.137 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.136 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.135 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.134 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.133 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.132 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.131 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.130 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.129 app/models/renalware/transplants/donor_operation.rb