Sha256: 9fcc69902a29d7b0729b94b19638768cdbc1a74d49cb987776b2fd3de46b3b1c

Contents?: true

Size: 594 Bytes

Versions: 35

Compression:

Stored size: 594 Bytes

Contents

# frozen_string_literal: true

module Renalware
  module Clinical
    class AllergyStatusForm
      include ActiveModel::Model
      include Virtus::Model

      attribute :no_known_allergies, Integer

      def save(patient, user)
        return unless patient.allergies.count == 0
        patient.allergy_status = no_known_allergies? ? :no_known_allergies : :unrecorded
        patient.by = user
        patient.allergy_status_updated_at = Time.zone.now
        patient.save!
      end

      private

      def no_known_allergies?
        no_known_allergies == 1
      end
    end
  end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
renalware-core-2.0.46 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.45 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.44 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.43 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.42 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.41 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.40 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.39 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.38 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.37 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.36 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.35 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.34 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.33 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.32 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.31 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.30 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.28 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.27 app/models/renalware/clinical/allergy_status_form.rb
renalware-core-2.0.26 app/models/renalware/clinical/allergy_status_form.rb