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.128 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.127 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.126 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.125 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.124 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.123 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.121 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.120 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.119 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.118 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.117 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.116 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.115 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.113 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.112 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.111 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.110 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.109 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.108 app/models/renalware/transplants/donor_operation.rb
renalware-core-2.0.106 app/models/renalware/transplants/donor_operation.rb