Sha256: 09233799049724648755972b109f38a6606d6411959eb628e9de9a3ec977e3d5
Contents?: true
Size: 815 Bytes
Versions: 47
Compression:
Stored size: 815 Bytes
Contents
# frozen_string_literal: true require_dependency "renalware/letters" require "fileutils" module Renalware module Letters # Used for example in a host app like renalware-blt to generate an RTF letter for saving to # the electronic public register, aka EPR/CRS. class SaveRtfLetterToFileJob < ApplicationJob queue_as :rtf_generation queue_with_priority 1 def perform(letter:, file_path:) file_path = Pathname(file_path) create_folder_if_not_exists(file_path) File.open(file_path, "wb") { |file| file << rtf_data_for(letter) } end def rtf_data_for(letter) RTFRenderer.new(LetterPresenterFactory.new(letter)).render end def create_folder_if_not_exists(path) FileUtils.mkdir_p(path.dirname) end end end end
Version data entries
47 entries across 47 versions & 1 rubygems