Sha256: b3fc3f32a6e43dd8c2e80c5de7e4d0b1bd34de1fe18596e730bd419a63a47b4b
Contents?: true
Size: 1.82 KB
Versions: 1
Compression:
Stored size: 1.82 KB
Contents
require_dependency "renalware/hd/base_controller" module Renalware module HD class CurrentProfileController < BaseController before_action :load_patient before_action :load_profile def show render :show, locals: locals end def edit render :edit, locals: locals end def update if update_profile redirect_to patient_hd_dashboard_path(patient), notice: t(".success", model_name: "HD profile") else flash[:error] = t(".failed", model_name: "HD profile") render :edit, locals: locals end end private attr_reader :profile def locals { profile: profile_presenter, patient: patient } end def update_profile if profile.persisted? ReviseHDProfile.new(profile).call(profile_params) else profile.update_attributes(profile_params.merge(active: true)) end end def preference_set PreferenceSet.for_patient(patient).first_or_initialize end def profile_presenter ProfilePresenter.new(profile, preference_set: preference_set) end def load_profile @profile = Profile.for_patient(patient).first_or_initialize end def profile_params params .require(:hd_profile) .permit(attributes) .merge(document: document_attributes, by: current_user) end def attributes [ :schedule, :other_schedule, :hospital_unit_id, :prescribed_time, :prescribed_on, :prescriber_id, :named_nurse_id, :transport_decider_id, document: [] ] end def document_attributes params .require(:hd_profile) .fetch(:document, nil).try(:permit!) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
renalware-core-2.0.0.pre.beta4 | app/controllers/renalware/hd/current_profile_controller.rb |