Implantação na hora de gerar o holerite de um motorista sem conta (deve aparecer o aviso)

This commit is contained in:
2026-06-18 20:56:09 -03:00
parent 6d246cadb8
commit 731774c32a
4 changed files with 2333 additions and 1 deletions

View File

@@ -89,9 +89,14 @@ module Pdf
# QR Code de login rápido. O Prawn não pagina imagem sozinho: se faltar
# espaço, garantimos uma nova página para o QR não sumir no rodapé.
# Motorista sem conta (sem login_token) não tem painel para acessar —
# mostramos um aviso no lugar do QR, em vez de omitir a seção.
if @user_motorista&.login_token.present?
@pdf.start_new_page if @pdf.cursor < 180
desenhar_qrcode
else
@pdf.start_new_page if @pdf.cursor < 120
desenhar_aviso_sem_acesso
end
assinaturas(motorista: @motorista)
@@ -155,5 +160,23 @@ module Pdf
arquivo&.close
arquivo&.unlink
end
# Exibido quando o motorista não tem conta de acesso (sem login_token).
# Sem conta não há painel para o QR apontar, então avisamos no lugar.
def desenhar_aviso_sem_acesso
secao "ACESSO AO SEU PAINEL"
altura = 56
topo = @pdf.cursor
@pdf.fill_color 'FEF3C7' # amarelo claro (aviso)
@pdf.fill_rounded_rectangle [0, topo], @pdf.bounds.width, altura, 6
@pdf.fill_color '92400E' # âmbar escuro (texto)
@pdf.text_box "Cadastro de acesso ainda não disponível para este motorista.\n" \
"Solicite ao administrador para receber seu PIN de 4 dígitos e o " \
"QR Code de acesso ao painel do motorista.",
at: [12, topo - 12], width: @pdf.bounds.width - 24, size: 10
@pdf.fill_color '000000'
@pdf.move_down altura + 8
end
end
end