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