Class: CreditMemo::PdfGenerator

Inherits:
BaseService show all
Includes:
Pdf::Base
Defined in:
app/services/credit_memo/pdf_generator.rb

Constant Summary

Constants included from Pdf::Base

Pdf::Base::FONT, Pdf::Base::NIMBUS_SANS_PATH, Pdf::Base::NIMBUS_SANS_PATH_BOLD, Pdf::Base::WY_LOGO_PATH

Instance Method Summary collapse

Methods inherited from BaseService

#log_debug, #log_error, #log_info, #log_warning, #logger, #options, #process, #tagged_logger

Constructor Details

#initialize(credit_memo, options = {}) ⇒ PdfGenerator

Returns a new instance of PdfGenerator.



4
5
6
7
8
9
10
# File 'app/services/credit_memo/pdf_generator.rb', line 4

def initialize(credit_memo, options = {})
  @credit_memo = credit_memo
  @store = options[:store]
  @show_tax_info = options[:show_tax_info]
  @show_kits_and_sn = options[:show_kits_and_sn]
  @currency_symbol = Money::Currency.new(credit_memo.currency).symbol
end

Instance Method Details

#generateObject



12
13
14
15
16
17
18
19
20
21
22
23
# File 'app/services/credit_memo/pdf_generator.rb', line 12

def generate
  composer = build_composer(margin: [100, 40, 20, 40])

  add_credit_memo_content(composer)
  add_headers_and_footers(composer)

  io = StringIO.new

  composer.write(io, optimize: true)
  io.rewind
  io.read
end