Sha256: 7394dba7fbd71ec453bb0647b4318b764cfcaa3be132416f2b08d14084c6c3f3
Contents?: true
Size: 1.61 KB
Versions: 8
Compression:
Stored size: 1.61 KB
Contents
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 unless @params[:clinic_id].present? Renalware::Clinics::Clinic.find(@params[:clinic_id]) end def default_clinic Renalware::Clinics::Clinic.ordered.first end def requested_consultant return unless @params[:consultant_id].present? 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
8 entries across 8 versions & 1 rubygems