Sha256: df586c4028ed031c6502fc78c0226e2b815acd612a9c8876662f546fec711d87
Contents?: true
Size: 1.63 KB
Versions: 93
Compression:
Stored size: 1.63 KB
Contents
# frozen_string_literal: true require_dependency "renalware/pathology" module Renalware module Pathology module Requests class RequestParamsFactory def initialize(params) @params = params end def build { clinic: clinic, consultant: consultant, telephone: telephone, template: template, by: @params[:by] } end private def clinic @clinic ||= requested_clinic || default_clinic end def consultant @consultant ||= requested_consultant || default_consultant end def telephone @telephone ||= requested_telephone || default_telephone end def template requested_template || default_template end def requested_clinic return if @params[:clinic_id].blank? Renalware::Clinics::Clinic.find(@params[:clinic_id]) end def default_clinic Renalware::Clinics::Clinic.ordered.first end def requested_consultant return if @params[:consultant_id].blank? Renalware::Pathology::Consultant.find(@params[:consultant_id]) end def default_consultant Renalware::Pathology::Consultant.ordered.first end def requested_telephone @params[:telephone] end def default_telephone consultant.telephone end def requested_template @params[:template] end def default_template "crs" end end end end end
Version data entries
93 entries across 93 versions & 1 rubygems