class RubyDanfe::DacteosGenerator
Public Instance Methods
render_infobox()
click to toggle source
# File lib/ruby_danfe/dacteos_generator.rb, line 6 def render_infobox # infobox @pdf.ibox 0.90, 9.39, 7.92, 0.54, '', 'DACTEOS', { :align => :center, :style => :bold, :size => 12} @pdf.ibox 0.90, 9.39, 7.92, 0.94, '', 'Documento auxiliar do Conhecimento de Transporte Eletrônico para Outros Serviços', { :align => :center, :border => 0, :size => 7 } @pdf.ibox 0.90, 3.43, 17.31, 0.54, '', 'MODAL', { :align => :center, :size => 7 } @pdf.ibox 0.90, 3.43, 17.31, 0.84, '', 'RODOVIÁRIO', { :align => :center, :size => 8, :border => 0, :style => :bold } @pdf.ibox 0.91, 1.98, 7.92, 1.44, 'MODELO', @xml['ide/mod'], {:size => 8, :align => :center} @pdf.ibox 0.91, 0.75, 9.90, 1.44, 'SERIE', @xml['ide/serie'], {:size => 8, :align => :center} @pdf.ibox 0.91, 2.48, 10.65, 1.44, 'NÚMERO', @xml['ide/nCT'], {:size => 8, :align => :center} @pdf.ibox 0.91, 0.97, 13.13, 1.44, 'FL', '1/1', {:size => 8, :align => :center} emiss = @xml['ide/dhEmi'][8, 2] + '/' + @xml['ide/dhEmi'][5, 2] + '/' + @xml['ide/dhEmi'][0, 4] + " " + @xml['ide/dhEmi'][11, 8] @pdf.ibox 0.91, 3.21, 14.10, 1.44, 'DATA E HORA DE EMISSÃO', emiss, {:size => 8, :align => :center} @pdf.ibox 0.91, 3.43, 17.31, 1.44, 'INSC. SUFRAMA DESTINATÁRIO', @xml['dest/ISUF'], {:size => 8, :align => :center} @pdf.ibox 1.13, 12.82, 7.92, 2.35 @pdf.ibarcode 0.85, 12.82, 9.25, 3.35, @xml.attrib('infCte', 'Id')[3..-1] @pdf.ibox 0.62, 12.82, 7.92, 3.48, 'Chave de acesso', '' @pdf.ibox 0.90, 12.82, 7.92, 3.62, '', @xml.attrib('infCte', 'Id')[3..-1].gsub(/(\d)(?=(\d\d\d\d)+(?!\d))/, "\\1 "), {:style => :bold, :align => :center, :size => 8, :border => 0} @pdf.ibox 1.13, 12.82, 7.92, 4.10, '', 'Consulta de autenticidade no portal do CT-e, no site da Sefaz Autorizadora, ou em http://www.cte.fazenda.gov.br/portal', { :align => :center, :valign => :center, :style => :bold, :size => 8 } @pdf.ibox 0.71, 12.82, 7.92, 5.23, 'Protocolo de Autorização de Uso' @pdf.ibox 0.90, 12.82, 7.92, 5.38, '', @xml['infProt/nProt'], { :style => :bold, :align => :left, :border => 0, :size => 8 } @pdf.ibox 1.33, 7.67, 0.25, 4.61, 'CFOP - NATUREZA DA PRESTAÇÃO', @xml['ide/CFOP'] + ' - ' + @xml['ide/natOp'], { :align => :left, :size => 7, :style => :bold } # UFIni -xMunIni @pdf.ibox 0.92, 10.25, 0.25, 5.94, 'INÍCIO DA PRESTAÇÃO', @xml['ide/UFIni'] + ' - ' + @xml['ide/xMunIni'] # UFFim -cMunFim – xMunFim @pdf.ibox 0.92, 10.24, 10.50, 5.94, 'TÉRMINO DA PRESTAÇÃO', @xml['ide/UFFim'] + ' - ' + @xml['ide/cMunFim'] + ' - ' + @xml['ide/xMunFim'] end
render_tomador()
click to toggle source
# File lib/ruby_danfe/dacteos_generator.rb, line 37 def render_tomador # tomador toma_cnpj = @xml['toma/CNPJ'] @pdf.ibox 0.90, 3.83, 0.25, 3.71, 'TOMADOR DO SERVIÇO', Helper.format_cnpj(toma_cnpj), { :align => :center, :size => 8, :style => :bold } end
render_tomador_do_servico()
click to toggle source
# File lib/ruby_danfe/dacteos_generator.rb, line 44 def render_tomador_do_servico # tomador @pdf.ibox 1.45, 20.49, 0.25, 12.38 endereco = 'enderToma' @pdf.ibox 0.90, 10.00, 0.28, 12.45, '', 'Tomador do Serviço: ', { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 10.00, 2.58, 12.45, '', @xml['toma/xNome'], { :size => 7, :border => 0, :style => :bold } @pdf.ibox 0.90, 10.00, 10.50, 12.45, '', 'Município: ', { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 10.00, 11.80, 12.45, '', @xml['enderToma/xMun'], { :size => 7, :border => 0, :style => :bold } @pdf.ibox 0.90, 4.00, 18.00, 12.45, '', 'CEP: ', { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 4.00, 18.70, 12.45, '', @xml['enderToma/CEP'][0,2] + '.' + @xml['enderToma/CEP'][3,3] + '-' + @xml['enderToma/CEP'][5,3], { :size => 7, :border => 0, :style => :bold } if @xml['enderToma/CEP'] != '' @pdf.ibox 0.90, 10.00, 0.28, 12.81, '', 'Endereço: ', { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 10.00, 1.88, 12.81, '', @xml['enderToma/xLgr'] + ', ' + @xml['enderToma/nro'] + (@xml['enderToma/xCpl'] != '' ? ' - ' + @xml['enderToma/xCpl'] : '') + ' - ' + @xml['enderToma/xBairro'], { :size => 7, :border => 0, :style => :bold } if @xml['enderToma/xLgr'] != '' @pdf.ibox 0.90, 2.00, 13.50, 12.81, '', 'UF: ' , { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 2.00, 14.50, 12.81, '', @xml['enderToma/UF'], { :size => 7, :border => 0, :style => :bold } @pdf.ibox 0.90, 5.00, 16.50, 12.81, '', 'País: ' , { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 5.00, 17.50, 12.81, '', @xml['enderToma/xPais'], { :size => 7, :border => 0, :style => :bold } @pdf.ibox 0.90, 5.00, 0.28, 13.17, '', 'CNPJ/CPF: ' , { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 5.00, 1.88, 13.17, '', Helper.format_cnpj(@xml['toma/CNPJ']), { :size => 7, :border => 0, :style => :bold } if @xml['toma/CNPJ'] != '' @pdf.ibox 0.90, 5.00, 1.88, 13.17, '', @xml['toma/CPF'][0,3] + '.' + @xml['toma/CPF'][3,3] + '.' + @xml['toma/CPF'][6,3] + '-' + @xml['toma/CPF'][9,2], { :size => 7, :border => 0, :style => :bold } if @xml['toma/CPF'] != '' @pdf.ibox 0.90, 5.00, 5.60, 13.17, '', 'Inscr. Est.: ', { :size => 7, :border => 0, :style => :italic } @pdf.ibox 0.90, 5.00, 7.20, 13.17, '', @xml['toma/IE'], { :size => 7, :border => 0, :style => :bold } @pdf.ibox 0.90, 5.00, 10.50, 13.17, '', 'Fone: ' , { :size => 7, :border => 0, :style => :italic } fone = @xml['toma/fone'] unless fone.eql?('') if fone.size > 8 @pdf.ibox 0.90, 5.00, 11.80, 13.17, '', '(' + @xml['toma/fone'][0,2] + ')' + @xml['toma/fone'][2,4] + '-' + @xml['toma/fone'][6,4], { :size => 7, :border => 0, :style => :bold } else @pdf.ibox 0.90, 5.00, 11.80, 13.17, '', @xml['toma/fone'][0,4] + '-' + @xml['toma/fone'][4,4], { :size => 7, :border => 0, :style => :bold } end end end