Sha256: e8a0724a19ff3da44a03efbb8b7d347f37463b620c141844416fa1d81b7b43b8
Contents?: true
Size: 577 Bytes
Versions: 28
Compression:
Stored size: 577 Bytes
Contents
require_dependency "renalware/patient" module Renalware module Patients class IdempotentCreatePatient attr_reader :params def initialize(user) @user = user end # TODO: Support different local_patient_id columns def call(params) patient_params = params.fetch(:patient).merge(by: @user) local_patient_id = patient_params.fetch(:local_patient_id) ::Renalware::Patient.create_with(patient_params) .find_or_create_by!(local_patient_id: local_patient_id) end end end end
Version data entries
28 entries across 28 versions & 1 rubygems