Sha256: 4a006eeed0eef2c19ff995ad5fb2017d549c5f8e1425b29d1651864a2006ecc3

Contents?: true

Size: 1.25 KB

Versions: 4

Compression:

Stored size: 1.25 KB

Contents

# frozen_string_literal: true

require "document/embedded"
require "document/enum"

module Renalware
  class PatientDocument < Document::Embedded
    attribute :interpreter_notes, String
    attribute :admin_notes, String
    attribute :special_needs_notes, String

    class Diabetes < NestedAttribute
      attribute :diagnosis, Boolean
      attribute :diagnosed_on, Date

      validates :diagnosed_on, timeliness: { type: :date, allow_blank: true }
    end
    attribute :diabetes, Diabetes

    class Referral < Document::Embedded
      attribute :referring_physician_name, String
      attribute :referral_date, Date
      attribute :referral_type, String
      attribute :referral_notes, String
    end
    attribute :referral, Referral

    class Psychosocial < Document::Embedded
      attribute :housing, String
      attribute :social_network, String
      attribute :care_package, String
      attribute :other, String
      attribute :updated_at, Date
    end
    attribute :psychosocial, Psychosocial

    class History < Document::Embedded
      attribute :alcohol, Document::Enum, enums: %i(never rarely social heavy)
      attribute :smoking, Document::Enum, enums: %i(no ex yes) # RRSMOKING %i(never former current)
    end
    attribute :history, History
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
renalware-core-2.0.21 app/documents/renalware/patient_document.rb
renalware-core-2.0.20 app/documents/renalware/patient_document.rb
renalware-core-2.0.18 app/documents/renalware/patient_document.rb
renalware-core-2.0.17 app/documents/renalware/patient_document.rb