Sha256: 6be0cb4a9436694d3ac73718dd5bd9078c1b341196b192db750924f670b47e83

Contents?: true

Size: 1.45 KB

Versions: 6

Compression:

Stored size: 1.45 KB

Contents

require_dependency("renalware/renal")

module Renalware
  module Renal
    class AKIAlertsController < BaseController
      include Renalware::Concerns::Pageable

      def index
        query = search_form.query
        alerts = query.call.page(page).per(per_page)
        authorize alerts
        render locals: {
          alerts: alerts,
          form: search_form,
          search: query.search
        }
      end

      def edit
        authorize alert
        render_edit(alert)
      end

      def update
        authorize alert
        if alert.update(aki_alert_params.merge(by: current_user))
          redirect_to renal_aki_alerts_path
        else
          render_edit(alert)
        end
      end

      private

      def search_form
        @search_form ||= begin
          options = params.key?(:q) ? search_params : {}
          AKIAlertSearchForm.new(options)
        end
      end

      def render_edit(alert)
        render :edit, locals: { alert: alert }
      end

      def alert
        @alert ||= AKIAlert.find(params[:id])
      end

      def aki_alert_params
        params
          .require(:renal_aki_alert)
          .permit(
            :notes, :action_id, :hotlist, :hospital_ward_id,
            :max_cre, :cre_date, :max_aki, :aki_date
          )
      end

      def search_params
        params
          .require(:q) {}
          .permit(:term, :on_hotlist, :action, :hospital_unit_id, :hospital_ward_id, :s)
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
renalware-core-2.0.13 app/controllers/renalware/renal/aki_alerts_controller.rb
renalware-core-2.0.12 app/controllers/renalware/renal/aki_alerts_controller.rb
renalware-core-2.0.11 app/controllers/renalware/renal/aki_alerts_controller.rb
renalware-core-2.0.9 app/controllers/renalware/renal/aki_alerts_controller.rb
renalware-core-2.0.8 app/controllers/renalware/renal/aki_alerts_controller.rb
renalware-core-2.0.7 app/controllers/renalware/renal/aki_alerts_controller.rb