Sha256: bf0b8345ab653c0a29fee7ef92c033ae4c399f22a50b771caaa9aa87198682b7
Contents?: true
Size: 1.47 KB
Versions: 5
Compression:
Stored size: 1.47 KB
Contents
# frozen_string_literal: true require_dependency "renalware/transplants" require "document/base" module Renalware module Transplants class RecipientFollowup < ApplicationRecord include Document::Base extend Enumerize belongs_to :operation, class_name: "RecipientOperation", foreign_key: "operation_id", touch: true belongs_to :transplant_failure_cause_description, class_name: "Transplants::FailureCauseDescription", foreign_key: "transplant_failure_cause_description_id" has_paper_trail class_name: "Renalware::Transplants::Version", on: [:create, :update, :destroy] has_document class_name: "Renalware::Transplants::RecipientFollowupDocument" validates :stent_removed_on, timeliness: { type: :date, allow_blank: true } validates :graft_nephrectomy_on, timeliness: { type: :date, allow_blank: true } validates :transplant_failed_on, timeliness: { type: :date, allow_blank: true } validates :transplant_failed_on, presence: true, if: ->(o) { o.transplant_failed } validates :transplant_failure_cause_description_id, presence: true, if: ->(o) { o.transplant_failed } validates :transplant_failure_cause_other, presence: true, if: ->(o) { o.transplant_failure_cause_description.try(:name) == "Other" } end end end
Version data entries
5 entries across 5 versions & 1 rubygems